N.Yamazaki's blog

主に音声合成について思ったことを書いてみようと思います。
<< 新しい音声合成LSIのデータシート | main | もしATP3010F4の動作が不安定だったら >>
AquesTalk pico LSI を使った Arduino 音声合成シールドの作成
先に、Arduinoを音声合成ボードに変えるというのをやりましたが、
今回は、Arduino用の音声合成シールドを作ってみます。

AquesTalk pico LSI ATP3010F4は、Arduino unoと同じATmega328pマイコンを使っていますが、ここにArduinoのスケッチを書きこんでオリジナルのArduino作品を作るなんてことはもちろんできません。そのためオリジナル作品を作るには、ArduinoボードとAquesTalk pico LSIがそれぞれ必要になり、これらを配線する必要があります。

Arduinoの世界では、無線LANとかSDカードなど機能を拡張するハードをシールドって呼ぶらしく、通常は基板になっていてArduinoボードに挿して簡単に使えるようにようになっています。
しかし、今回は基板ではなく、ICを亀の子のように2段に重ねて実装します。
部品点数も少ないですからね。

ArduinoのAVRマイコンと、AquesTalk pico LSIはI2Cシリアル通信で接続します。
I2Cは最小限の2線での通信できますので、ほとんどのポートをそのままアプリに使用することができます。UARTは、Arduino側のスケッチを書き込む時に使うので、pico LSIと同時に使用することはできません。

出力はトランジスタ1つのシンプルなアンプでスピーカを駆動します。


シールド部分で必要な部品は、これだけ。右下の黒いのはスピーカを接続するための端子で、DIPソケットを2端子だけに切断したものです。

  • ATP3010F4(AquesTalk pico LSI)
  • セラロック(16MHz)
  • 2SC1815
  • 4.7KΩ
  • DIPソケット(2端子分)

回路図は、こんな感じ。アンプ部はかっこ良く言えばフルデジタルアンプ!?
スピーカ端子は、片側がVCCにつながっているので他の装置には繋げられません!


■製作

  1. 不要な端子をカット
    ATP3010F4の2,3,5,6,11,13,14,15,16,17,18,19,21,23,24,25,26pin、覚悟を決めて根元からニッパで切断。

  2. ジャンパーを配線
    SMOD0(pin4)はGNDに落とすのでGND(22pin)に配線。

  3. セラロックを載せる
    セラロックはGNDが中央のピンなので、あらかじめこんな感じで加工しておく。


    セラロックをつけた後

  4. トランジスタと抵抗を載せる
    トランジスタは、先に、位置を決めて瞬間接着剤でLSIにつけたほうが作業しやすい。ベースは抵抗を介して、AOUT(12pin)に接続する。エミッタはGND(22pin)に接続。コレクタはそのまま。

  5. SP端子を接続してシールドの完成!
    SP端子を瞬間接着剤でLSIの端に接着。
    片側をトランジスタのコレクタに、もう一方を、LSIの裏にジャンパーを這わせてVCC(7pin)に配線。

  6. あとは、Arduinoのマイコンに重ねる。
    Arduinoのマイコンの上にATP3010F4をのせて、1,7,8,20,22,27,28pin同士をハンダ付け。
以上で、ハードウェアは完成です。この状態でも通常のArduinoの使い方ができます。
試しにサンプルスケッチBlinkでLEDが点滅するか確認してみましょう。

次回は、これを用いて、I2Cの通信をしながら音声合成を行うプログラム(スケッチ)を、簡単なアプリと共に紹介します。

| AquesTalk pico LSI | 18:13 | - | - |
PROFILE
Follow
CATEGORIES
LATEST ENTRIES
SEARCH THIS SITE
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND
SONY MDR-CD900ST
SONY MDR-CD900ST (JUGEMレビュー »)

普段これで開発しています。
RECOMMEND
RECOMMEND
RECOMMEND
RECOMMEND