昨日まではmicro:bit(マイクロビット)を喋らせていましたが、今日はArduinoを喋らせてみました

 

micro:bitではブロック3つで喋らせることができましたが、Arduinoの場合はどうなるのでしょうか。

 

 

今回参考にさせていただいたのはこちらの記事です。

トボリブログさん :Arduinoで好きな言葉をしゃべらせる!音声合成LSI ATP3012の使い方!

https://toboli.hatenablog.com/entry/2019/05/20/153501

 

 

ATP3012まわりの配線は、昨日と全く同じものを使いました。

micro:bitとArduinoで、通信する端子だけ付け替えれば良いはず。

 

配線した端子は、下記のようにしました。

(3.3VとGNDは省略)

 

micro:bitの場合。

私はP1を使いましたが、他の端子でもOKです。

micro:bitからデータを送るだけ、の設定になっています。

 

 

Arduinoの場合。

今回は参考記事通りに1011の端子を使いました。

SoftwareSerealを使っているのですが、1つだけの引数だとエラーが出てしまったので2つ設定しています。

ちなみに、2つとも配線しないと音が出ませんでした

 

 

 

参考元のサンプルプログラムから、必要そうな部分だけを抽出してみました。

 

  • SofrwareSerialの読み込み
  • SofrwareSerialのピン設定
  • シリアル通信速度の設定
  • ソフトウェアシリアル通信速度の設定
  • ディレイ(1秒)
  • 文字列送信

やったことは上記6つ(6行)です。

動作は全てsetupのところに全部書いて、loopは空になっています。

micro:bitでいうところの「最初だけ」に書いて「ずっと」は空の状態ですね。

 

 

 

さて、動作確認をしてみましょう!

はじめにリセットボタンを押して、setup後の動作をさせています。

 

 

ちゃんと喋ってくれましたね!

(動画にダンボーが映ってないけど…)

 

プログラムも簡単な内容なので、Arduinoでも気軽に使えると言えますね。

 

 

反応したら喋らせる、というのは色々な場面で使えそう。

今後も活用していく予定です。