voice clock for STM32F4discovery.

sorry. japanese only. STM32F4Discoveryボードで作る音声読み上げ時計 [棒読み時計のアーカイブ] 概要 STM32F4discoveryボード(以下 Discoボード)で動作する。音声読み上げ時計を作ってみました。 単純にフラッシュにある時刻の音声データ(8Khz/8bit/1ch)をDAコンバータに出力するだけです。 起動時に時刻を読み上げ,その後毎正5分に自動的に時刻を読み上げます。 ユーザボタンを押すと,自動時刻を読み上げを停止し,その時の内蔵RTCの時刻を読み上げます。 ユーザボタンをダブルクリックすると,自動時刻を読み上げ機能を再開します。 音声データの継ぎ目をちゃんと処理していないのでプチノイズが出るときがあります。 音声はDiscoボードのステレオジャックから出力されます。 なるべく近い時刻を案内するために,毎分50秒を超えたところで分を切り上げて案内します。 つまり1時23分51秒の時点で,ユーザボタンを押すと,音声案内は「1時24分」となります。 ボード上のLEDは,以下のような状態表示を行います。 (1) 緑LED:起動後のハートビート (2) 青LED:自動読み上げ機能がONの時に明滅 (3) 橙LED:ユーザボタンを押したときに明滅 (4) 赤LED:RTCのクロックソースがLSE以外の場合に明滅 TCXO RTCアドオンボードを接続することで,時刻の再設定の手間を減らせます。 実行のさせ方 ↑のアーカイブを解凍してbuildディレクトリにあるf4VOICEC.elfかf4VOICEC.hexをdisco ボードのフラッシュに書き込みます。 書き込みができたらリセットするなどして実行すればOKです。 時刻の設定は,DiscoボードのOTG_FS(マイクロUSBコネクタ)がCDCの仮想COMポートになり ますので,そちらにPCなどを繋いで日付と時刻を入力してください。 このとき同時にTCXO RTCアドオンボードの時刻設定も行えます。 仮想COMポートからの時刻の設定例: 03271912.20 ←MMDDhhmm または MMDDhhmm.ss の形式で時刻を入力します。 wrote TCXO_RTC 3-27 19:12:20 On chip RTC's ClockSource is LSI 謝辞 時刻の読み上げ音声データはsoftalkを使用して生成したものを加工したものです。 ELMのChaNさん作xprintfルーチンを使用しています。 CMSISやデバイスハンドラは,STmicro社が公開している STM32_USB-Host-Device_Lib_V2.1.0 から抽出したものです。 [ご注意] ・このページの記載事項については,一切無保証です。
inserted by FC2 system