ギターシンセで載せたら、数は多くないけど、イギリスやアメリカからアクセスがあった。
イギリスったら聖地って感じなこと。
実際、ギターシンセで.ukってよく目にしたし。
みんなスゲエ、イカした動画ばかりじゃないの?
ちょいと、恥ずかしくなった。
ここは踏まえるべきことをきちんと踏まえて、恥ずかしくないものを仕上げる。 YouTubeも動画の編集して10分くらいのもの用意しておこうと思った。
弦を2本使って、音を出すことまで出来た。
和音はまだ。
一気に6弦全部調整してみたいけどケーブルがない。
Arduinoの方も、踏まえることきちんと。
ロボギターの方も、Arduino1台でいっぱいいっぱいだった操作を、デュアル接続にしたり、小型化したり、液晶つけてきちんとしたい。
どうせだから、サイレントギターシンセ?に載せてもいい。
作って遊べるArduino互換機/ソシム- ¥2,808
- Amazon.co.jp
とりあえずのスケッチ。
これで正しいとは言えない。
とりあえず、今日のところまではこれでOK 。
初心者が初心者に忠告だけど、デジタル出力HIGHでGNDに直に落ちしてしまうと簡単に壊れるって書いてあったので注意。
- #include <MIDI.h>
- MIDI_CREATE_DEFAULT_INSTANCE();
- // int notenumber[8]={60, 62, 64, 65, 67, 69, 71, 72};
- int outputValue1 = 0;
- int outputValue2 = 0;
- int outputValue3 = 0;
- int outputValue4 = 0;
- void setup(){
- MIDI.begin();
- //Serial.begin(9600);
- pinMode( 2, OUTPUT);
- pinMode( 3, OUTPUT);
- pinMode(12, INPUT);
- pinMode(13, INPUT);
- }
- void loop() {
- digitalWrite(2, HIGH);
- outputValue1 = digitalRead(12);
- delay(100);
- outputValue2 = digitalRead(13);
- delay(100);
- digitalWrite(2, LOW);
- digitalWrite(3, HIGH);
- outputValue3 = digitalRead(12);
- delay(100);
- outputValue4 = digitalRead(13);
- delay(100);
- digitalWrite(3, LOW);
- /*
- Serial.println(outputValue1);
- delay(1);
- Serial.println(outputValue2);
- delay(1);
- Serial.println(outputValue3);
- delay(1);
- Serial.println(outputValue4);
- */
- if(outputValue1 == HIGH && outputValue2 == LOW){
- MIDI.sendNoteOn(72, 500, 1);
- delay(500);
- MIDI.sendNoteOff(72, 0, 1);
- }
- if(outputValue1 == HIGH && outputValue2 == HIGH){
- MIDI.sendNoteOn(74, 500, 1);
- delay(500);
- MIDI.sendNoteOff(74, 0, 1);
- }
- if(outputValue1 == LOW && outputValue2 == HIGH){
- MIDI.sendNoteOn(76, 500, 1);
- delay(500);
- MIDI.sendNoteOff(76, 0, 1);
- }
- if(outputValue3 == HIGH && outputValue4 == LOW){
- MIDI.sendNoteOn(77, 500, 1);
- delay(500); // bpm=120
- MIDI.sendNoteOff(77, 0, 1);
- }
- if(outputValue3 == HIGH && outputValue4 == HIGH){
- MIDI.sendNoteOn(79, 500, 1);
- delay(500); // bpm=120
- MIDI.sendNoteOff(79, 0, 1);
- }
- if(outputValue3 == LOW && outputValue4 == HIGH){
- MIDI.sendNoteOn(81, 500, 1);
- delay(500);
- MIDI.sendNoteOff(81, 0, 1);
- }
- }