// 定義
// 初期設定
setup()
// メインループ
void loop() {
// TONE
if ( command == 'T' || command == 't' ) // 'T' is Tone Command "T,Hz,len(msec)"
{
Serial.print(command);
Serial.print(',');
int wave = Serial.parseInt();
Serial.print(wave);
Serial.print(',');
int len = Serial.parseInt();
Serial.print(len);
Serial.print('\n');
tone(soundPin, wave);
delay(len);
noTone(soundPin);
} // TONE
}
使い方
シリアルモニタ―から T,周波数(Hz),時間(msec)の順に入力します。
例) T,440,1000
これで、ラの音が、1秒間鳴れば成功です。
コマンドを続ければ簡単な音楽を鳴らすことができます。
おわりに
音を出すのは標準のTONE関数を使うので簡単ですね。
これだと8bitぽいですが、Arduinoは単体なら音声をしゃべらせたり、シンセサイザーやボコーダーにもすることができますが、二足歩行ロボットの場合は歩行がメインなのでまずはこれで楽しみましょう。
Mozziライブラリとかのシンセサイザー用のライブラリは大きすぎてメモリに入らなくなるので、別の機会とします。
購入品情報(未購入です。)
秋月電子の部品を使っていますが、Amazonで代替品を購入するならこの部品かと思います。
(20体分になりますが、おおすぎるな~)
6日でできる! 二足歩行ロボット自作 SW編 Day2
はじめに
音をならせるようにします
HW編の おわりに にあるソースコードに順次機能を追加して行きます。
SW編はHWの終わりにで調整できているものとします。
Arduinoのスケッチは大きく分けると、定義、初期設定、メインループ の三つから構成されています。
HWの最後のソースコードの定義、初期設定、メインループにそれぞれソースコードを追加すると機能が追加されます。
それではソースコードの解説です。
音は最も基本的な関数をシリアルから入力できるようにするだけです。