[[Arduino勉強会]] #contents 2014/03/29からのアクセス回数 &counter; ** 音声合成モジュール [#y0ad317d] 秋月から販売されている [[音声合成モジュールATP3011F4-PU>http://akizukidenshi.com/catalog/g/gI-05665/]] をATMegaボードに差して、動作を確認してみました。 &ref(ATP3011F4-PU.png); ちょっと乱暴ですが、圧電スピーカを以下の様に接続しました。 - GND: 黒線 - D6: 赤線 Arduino IDEを起動し、シリアルモニターを起動します。 改行の設定を「CRおよびLF」にし、ボーレートは9600 baudとします。 最初に、?を入力して音声合成モジュールにボーレートを調整させます。 この時">>"と返ってきます。 次に発生させたい言葉をローマ字で入力します。 #pre{{ 「ohayou」 }} と入力すると、それっぽくスピーカら音声が出力され、シリアルモニターには、 "*>"と返ってきます。 &ref(SerialMonitor.png); ** 音声合成モジュールの使い方 [#x974e402] 音声合成モジュールの使い方は、 [[音声合成LSI(ATP3011F4-PU)を使ってみます>http://www.geocities.jp/zattouka/GarageHouse/micon/TalkIC/ATP3011.htm]] に詳しく紹介されています。 音声合成モジュールのピン配置を上記サイトの図を引用して説明します。 &ref(ATP3011-2.jpg); *** 動作モード [#nc762cf6] 音声合成モジュールには、4つの動作モードがあります。モードの設定は、PMOD0, PMOD1で行います。 未接続の場合には、セーフモードになっているみたいです。 | 動作モード | 意味 | PMOD0 | PMOD1 |h | コマンド入力モード | 外部シリアルインタフェースを使ってメッセージを出力する |1 | 1 | | セーフモード | 内部設定に関わらず、UART(9600bau)またはI2Cでのシリアル通信を使用する | 0 | 1 | | スタンドアロンモード | PC0~PC3で指定されたプリセットメッセージを出力する | 1 | 0 | | デモモード | プリセットメッセージを繰り返し出力する | 0 | 0 | 上記サイトのブレッドボードの配線を参考にデモモードを試してみました。 &ref(demo-mode.png); *** シリアル通信の指定 [#qe633d71] シリアル通信には、UART(9600bau)、I2C, SPIを使用できます。使用するシリアル通信は、SMOD0, SMOD1で設定します。 未接続の場合には、UARTが選択されるみたいです。 | 通信モード | SMOD0 | SMOD1 |h | UART | 1 | 1 | | I2C | 0 | 1 | | SPI(mode3) | 1 | 0 | | SPI(mode0) | 0 | 0 | ** 秋月のATMegaボードを使う [#i103a62d] 初心者にお薦めなのが、秋月のATMegaボードを使う方法です。ブレッドボードで何本も結線すると間違いも多くなります。 今回使用する部品は、以下の6点です。((すべて秋月で購入可能)) &ref(parts.png); | 部品名 | 型名 | 値段 |h | 音声合成LSI | ATP3011F1-PU(ゆっくりな女声) | 850円 | | ATMEGA168/328用マイコンボード(I/Oボード) | AE-ATmega328 | 150円| | 丸ピンICソケット(28P) | 2227MC-28-03 | 70円 | | ピンソケット (6P) | C-03784 | 20円x2 = 40円 | | ピンソケット (8P) | C-03784 | 30円x2 = 60円 | | プラスチックスペーサー | P-01864 | 100円/2 = 50円 | 組み立てると以下の様になります。((他の部品を追加すると単体で動くArduinoになります)) &ref(AE-Atmega328.png); ** 音声合成モジュールを載せて動かしてみる [#ke0bd94a] 音声合成モジュールを載せて、動かしてみます。 シリアルモジュールと使って音声合成モジュールを接続します。 シリアルモジュールのピンは、右から以下のようになっています。 | 1 | DTR | | 2 | RX-I | | 3 | TX-O | | 4 | VCC | | 5 | CTS(GND) | | 6 | GND | &ref(Serial-module.png); シリアルモジュールとATMegaボードの接続は、以下の様につなぎます。 | シリアルモジュール | ATMegaボード |h | GND | J4-GND | | VCC | J4-5V | | RX-I | J1-1(TX) | | TX-O | J1-2(RX) | スピーカーとの接続は、以下の様にします。 | 赤 | J1-6 | | 黒 | GND | &ref(ATP-setting.png); *** 動作確認 [#xefced9b] シリアルモニターを9600bauにセットして開きます。以下のように?を入力し、リターンキーを押すと >>が表示されれば接続はOKです。 #pre{{ ? }} #pre{{ >> }} つぎに好きな言葉をローマ字で入力してみましょう。ohayouと入力すると「おはよう」としゃべります。 pre{{ ohayou }} ** コメント [#t07e4e3e] #vote(おもしろかった,そうでもない,わかりずらい) 皆様のご意見、ご希望をお待ちしております。勉強会で分からなかったこと等、お気軽に問い合わせて下さい。 スパム防止に画像の文字列も入力してください。 #comment_kcaptcha