int L1=200; int L2=400; int L3=650; int L4=800; int melody[4][13] = { { 131, //ド 139, 147, //レ 156, 165, //ミ 175, //ファ 185, 196, //ソ 208, 220, //ラ 233, 247, //シ 262 //ド }, { 262, //ド 277, 294, //レ 311, 330, //ミ 349, //ファ 370, 392, //ソ 415, 440, //ラ 466, 494, //シ 523 //ド }, { 523, //ド 554, 587, //レ 622, 659, //ミ 698, //ファ 740, 784, //ソ 831, 880, //ラ 932, 988, //シ 1047 //ド }, { 1047, //ド 1109, 1175, //レ 1245, 1319, //ミ 1397, //ファ 1480, 1568, //ソ 1661, 1760, //ラ 1865, 1976, //シ 2093 //ド }}; void setup() { Serial.begin(9600); pinMode(19, INPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(8, OUTPUT); pinMode(9, OUTPUT); pinMode(10, OUTPUT); pinMode(11, OUTPUT); pinMode(12, OUTPUT); pinMode(13, OUTPUT); pinMode(14, OUTPUT); pinMode(15, OUTPUT); pinMode(16, OUTPUT); } void loop() { if(digitalRead(19) == LOW) { //タクトスイッチが押されたら開始する for (int i=1; i <= 3; i++){ //3オクターブ分 繰り返す ///////////////////かえるのうたが///////////////// tone(3, melody[i][0],L2); //ド LED1(1,0,0) ; //赤 LED2(0,1,0) ; //緑 LED3(0,0,1) ; //青 LED4(1,0,1) ; //マゼンタ delay(L2+30); tone(3, melody[i][2],L2); //レ LED1(0,1,1) ; //シアン LED2(1,0,0) ; LED3(0,1,0) ; LED4(0,0,1) ; delay(L2+30); tone(3, melody[i][4],L2); //ミ LED1(1,1,0) ; //イエロー LED2(0,1,1) ; LED3(1,0,0) ; LED4(0,1,0) ; delay(L2+30); tone(3, melody[i][5],L2); //ファ LED1(0,0,1) ; LED2(1,1,0) ; LED3(0,1,1) ; LED4(1,0,0) ; delay(L2+30); tone(3, melody[i][4],L2); //ミ LED1(0,1,0) ; LED2(0,0,1) ; LED3(1,1,0) ; LED4(0,1,1) ; delay(L2+30); tone(3, melody[i][2],L2); //レ LED1(1,0,0) ; LED2(0,1,0) ; LED3(0,0,1) ; LED4(1,1,0) ; delay(L2+30); tone(3, melody[i][0],L3); //ド LED1(1,0,1) ; LED2(1,0,0) ; LED3(0,1,0) ; LED4(0,0,1) ; delay(L3+30); noTone(3); delay(L1+50); ///////////////////きこえてくるよ///////////////// tone(3, melody[i][4],L2); //ミ LED1(0,1,1) ; LED2(1,0,1) ; LED3(1,0,0) ; LED4(0,1,0) ; delay(L2+30); tone(3, melody[i][5],L2); //ファ LED1(1,1,0) ; LED2(0,1,1) ; LED3(1,0,1) ; LED4(1,0,0) ; delay(L2+30); tone(3, melody[i][7],L2); //ソ LED1(0,0,1) ; LED2(1,1,0) ; LED3(0,1,1) ; LED4(1,0,1) ; delay(L2+30); tone(3, melody[i][9],L2); //ラ LED1(0,1,0) ; LED2(0,0,1) ; LED3(1,1,0) ; LED4(0,1,1) ; delay(L2+30); tone(3, melody[i][7],L2); //ソ LED1(1,0,0) ; LED2(0,1,0) ; LED3(0,0,1) ; LED4(1,1,0) ; delay(L2+30); tone(3, melody[i][5],L2); //ファ LED1(1,0,1) ; LED2(1,0,0) ; LED3(0,1,0) ; LED4(0,0,1) ; delay(L2+30); tone(3, melody[i][4],L3); //ミ LED1(0,1,1) ; LED2(1,0,1) ; LED3(1,0,0) ; LED4(0,1,0) ; delay(L3+30); noTone(3); delay(L1+50); ///////////////////クワッ クワッ クワッ クワッ///////////////// tone(3, melody[i][0],L2); //ド LED1(1,0,1) ; LED2(1,0,1) ; LED3(1,0,1) ; LED4(1,0,1) ; delay(L2+30); noTone(3); LED1(0,0,0) ; //消灯 LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L2+50); tone(3, melody[i][0],L2); //ド LED1(1,1,0) ; LED2(1,1,0) ; LED3(1,1,0) ; LED4(1,1,0) ; delay(L2+30); noTone(3); LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L2+40); tone(3, melody[i][0],L2); //ド LED1(1,0,0) ; LED2(1,0,0) ; LED3(1,0,0) ; LED4(1,0,0) ; delay(L2+30); noTone(3); LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L2+30); tone(3, melody[i][0],L2); //ド LED1(0,1,0) ; LED2(0,1,0) ; LED3(0,1,0) ; LED4(0,1,0) ; delay(L2+30); noTone(3); LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L2+30); ///////////////////ゲ・ゲ・ゲ・ゲ・ゲ・ゲ・ゲ・ゲ/////////////// tone(3, melody[i][0],L1); //ド LED1(1,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][0],L1); //ド LED1(0,0,0) ; LED2(0,1,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][2],L1); //レ LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,1) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][2],L1); //レ LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(1,0,1) ; delay(L1+20); tone(3, melody[i][4],L1); //ミ LED1(1,1,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][4],L1); //ミ LED1(0,0,0) ; LED2(0,1,1) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][5],L1); //ファ LED1(0,0,0) ; LED2(0,0,0) ; LED3(1,0,0) ; LED4(0,0,0) ; delay(L1+20); tone(3, melody[i][5],L1); //ファ LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,1,0) ; delay(L1+20); ///////////////////クワッ クワッ クワッ///////////////// tone(3, melody[i][4],L1); //ミ LED1(0,0,1) ; LED2(0,0,1) ; LED3(0,0,1) ; LED4(0,0,1) ; delay(L1+30); noTone(3); delay(L1+30); tone(3, melody[i][2],L1); //レ LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(L1+30); noTone(3); delay(L1+30); tone(3, melody[i][0],L4); //ド LED1(0,0,1) ; LED2(0,0,1) ; LED3(0,0,1) ; LED4(0,0,1) ; delay(L4+30); LED1(0,0,0) ; LED2(0,0,0) ; LED3(0,0,0) ; LED4(0,0,0) ; delay(500); }}} void LED1(int r,int g,int b) { digitalWrite(5, r); digitalWrite(6, g); digitalWrite(7, b); } void LED2(int r,int g,int b) { digitalWrite(8, r); digitalWrite(9, g); digitalWrite(10, b); } void LED3(int r,int g,int b) { digitalWrite(11, r); digitalWrite(12, g); digitalWrite(13, b); } void LED4(int r,int g,int b) { digitalWrite(14, r); digitalWrite(15, g); digitalWrite(16, b); }