良好!ギターシンセ動画(USB-MIDI)途中経過! | ..あちゃ! no mic's

..あちゃ! no mic's

野良作業でウクレレサイズの楽器製作中(構造材としての剛性をテスト)

SANTA no Mix

簡単に通った。
ただ、フレットが錆びているのか、接触が悪かった。
弦は新しいので問題はないだろうけど、どれだけの時間使えるのか問題だ。

ここで、ひとつ、大きな障害があることに気が付いた。
携帯電話などの電源が落ちるときに、弦がアンテナになってノイズを拾ってしまうことだ。
心臓に悪そうな、お皿を地面に落として割ったような音がする。
これがきれいな音ならば、効果音として楽器に取り入れることが出来るだろうけど、不気味な破壊音だ。

Arduinoのプログラム(スケッチ)をちょっとはカッコがつくように書き換えてみる。
それから和音の出音に挑戦してみる。
今回はサックスの音を使ったけど、チープだなあ。
小細工ができないかな。
オンドマルトノのこともあるし、どう繋がるかだな。

追記!
とりあえずのスケッチ。

#include MIDI_CREATE_DEFAULT_INSTANCE(); int i; int notenumber[]={72,74,76,77,79,81,83,84,86,88,89,91,93,95,96,98,100,101}; int gaugePin = 2; #define fretPin_1 8 #define fretPin_2 9 void setup(){   MIDI.begin();    // Serial.begin(9600);      pinMode( 2, OUTPUT);      pinMode( 3, OUTPUT);      pinMode( 4, OUTPUT);      pinMode( 5, OUTPUT);      pinMode( 6, OUTPUT);      pinMode( 7, OUTPUT);      pinMode( fretPin_1, INPUT);      pinMode( fretPin_2, INPUT);   } void loop() {   for(i = 0 ; i < 18 ; i = i + 3){      PLAY();     gaugePin++;   }   i = 0;   gaugePin = 2; } void PLAY () {   digitalWrite(gaugePin,HIGH);   delay(100);      if(digitalRead(fretPin_1) == LOW && digitalRead(fretPin_2) == HIGH){         MIDI.sendNoteOn(notenumber[i], 500, 1);         delay(500);         MIDI.sendNoteOff(notenumber[i], 0, 1);      }       else if(digitalRead(fretPin_1) == HIGH && digitalRead(fretPin_2) == HIGH){         i++;         MIDI.sendNoteOn(notenumber[i], 500, 1);         delay(500);         MIDI.sendNoteOff(notenumber[i], 0, 1);      }        else if(digitalRead(fretPin_1) == HIGH && digitalRead(fretPin_2) == LOW){         i = i +2;         MIDI.sendNoteOn(notenumber[i], 500, 1);         delay(500);         MIDI.sendNoteOff(notenumber[i], 0, 1);      }   digitalWrite(gaugePin,LOW);   delay(1); }