
Arduino と抵抗(1kΩ茶黒赤金, 1kΩから10kΩ(茶黒橙金)ぐらいならよい)とスイッチ、圧電スピーカを用意します。図のスイッチはタクトスイッチです。回路図のように Arduinoの2番ピンとスイッチの片方の足、抵抗の片方の足の3つをつなぎます。 スイッチの反対の足はグラウンド(GND)へ、抵抗の反対の足は5Vへつなぎます。 スイッチの向きを90度間違えると動作しないので注意してください。
このプログラムを実行している間にスイッチを押すとタイマーがスタートし、 3分が経過するとメロディーが流れます。プログラムを止めるには Ctrl+C を入力します。
このプログラムは大きく分けると5つに分かれています。
pinMode(13, OUTPUT);
for(;;) {
while(digitalRead(2) == HIGH) {
delay(10);
}
for(i=0; i<175; i=i+1) {
digitalWrite(13, HIGH);
tone(8, 1000);
delay(100);
noTone(8);
delay(400);
digitalWrite(13, LOW);
delay(500);
}
for(i=0; i<25; i=i+1) {
digitalWrite(13, HIGH);
tone(8, 1000);
delay(100);
noTone(8);
digitalWrite(13, LOW);
delay(100);
}
tone(8, 523);
delay(200);
noTone(8);
tone(8, 587);
delay(200);
noTone(8);
tone(8, 659);
delay(400);
noTone(8);
tone(8, 587);
delay(200);
noTone(8);
tone(8, 523);
delay(200);
noTone(8);
}