MP3ボイスモジュール(JQ8400-FL)
MP3ボイスモジュール・電源:DC3.3~5V
・MP3チップ:JQ8400-FL
・ファイルシステム:FAT16/FAT32
・オーディオフォーマット:MP3、WAV
・サンプルレート(KHz):8/11.025/12/16/22.05/24/32/44.1/48
UART 通信プロトコル
・全二重シリアル通信プロトコル
・ボーレート 9600、8 ビット データ、パリティなし、1 ストップ ビット
MP3モジュール操作コマンド
開始コード | コマンド | データ長 | データ1 | ~ | データn | チェックサム |
---|---|---|---|---|---|---|
0XAA | 0x01~0x26 | n | 可視コード~データnまでの和の下位1バイト |
コマンド | 動作 |
---|---|
0x01 | 状況照会 (Status Inquiry)ステータス 00:停止、01:再生中、02:一時停止 |
0x02 | Play : 現在のオーディオの最初から再生 |
0x03 | 一時停止 (Pause) |
0x04 | Stop |
0x05 | 最後の曲 (Last song) |
0x06 | 次の曲 (Next song) |
0x07 | 曲指定 (Specify song) 指定曲番(1 ~ 65535)の曲を再生 |
0x08 | ドライブとディレクトリを指定 (Specify drive and directory) |
0x09 | 現在のドライブの問い合わせ (Specify drive and directory) |
0x0A | 現在再生中のストレージ(ドライブ番号)の問い合わせ |
0x0B | 指定したドライブに切り替える |
0x0C | 音声ファイル総数の問い合わせ |
0x0D | 現在のファイル番号の問い合わせ |
0x0E | 最後のディレクトリ : ディレクトリの最初のオーディオを再生 |
0x0F | 次のディレクトリ :ディレクトリの最初のオーディオを再生 |
0x10 | 現在の操作を終了。 現在の操作が挿入再生の場合は、元の状態に戻る |
0x11 | 現在のディレクトリ内の最初のオーディオの序数を返す |
0x12 | ディレクトリ内のオーディオ総数の問い合わせ |
0x13 | ボリュームコントロール |
0x14 | 音量を1段階上げる |
0x15 | 音量を 1 段階下げる |
0x16 | 挿入プレイ:指定された再生が終了すると、前のブレーク ポイントに戻って再生 |
0x17 | 再生ディレクトリの指定 |
0x18 | ループバックモードを設定 |
0x19 | ループの繰り返し回数を設定 |
0x1A | EQ設定 |
0x1B | 複合再生:ファイル名を使用した結合再生は、より便利で正確 |
0x1C | 結合再生の停止 |
0x1D | チャネルの設定 |
0x1E | 短いファイル名の問い合わせ |
0x1F | オーディオを選択するが、再生はしない |
0x20 | 繰り返し読み制御 |
0x21 | 繰り返し読みを止める |
0x22 | 早戻しの期間(秒)を指定する |
0x23 | 早送りの時間(秒)を指定する |
0x24 | 現在のオーディオの長さ(時間)の問い合わせ |
0x25 | 再生時間をオンにする |
0x26 | 再生時間の停止 |
ArduinoUNOとの接続
シリアルポートの TTL レベルは 3.3V
5V MCU と接続する場合は、1K オームの抵抗を使用
BUSY信号も3.3VなのでArduinoUNOで使用する場合にはアナログ入力でBUSYを判定
ショートファイル名の取得/トラック番号との対応付け
指定曲番(トラック番号)はフラッシュメモリーにコピーした順番(コピーシーケンス)になります。ファイル名は一切関係ないので使いにくい事この上ありません。
指定曲番(トラック番号)のショートファイル名(半角英大文字+数字の8文字+拡張子3文字)のファイル名を取得できるので
指定曲番(トラック番号)とショートファイル名の対応を取る事は出来ます。
ソースコード
MP3-PlayAll : 全ての音声ファイルを順番に再生MP3-FileName : 音声ファイルのショートファイ名を取得
MP3-PlayOne : ショートファイル名を指定して1局だけ再生
以上の スケッチを公開しています。
YuruPuro/MSP2807