2012年5月5日土曜日

SH-2A MP3再生

GWの成果です。
Interfaceの記事とソースコードを参考に、FatFsベースに構築したファイルシステムと、オープンソースのMP3デコーダのlibmadを使って、SH-2AでMP3再生ができました。

MP3は1152サンプル(ステレオだと×2サンプル)を1フレームと扱ってますが、1フレーム毎にSDカードからFAT経由でデータを読み出し、大容量RAMに展開(DMA転送)。libmadに1フレーム単位でデータを入力し、libmadからの1サンプル(ステレオで×2)毎の出力をSH-2AのPWMのデューティに設定し、PWM出力(ステレオ2ch)をステレオミニジャックを通して、イヤホンでMP3の音楽を聞けました!

PWMのデューティ設定って結構アバウト(44.1KHzは1サンプルで22.7usだけど、8bit分解能だと10.7us)だし、ボヤッとした音かと思いましたが、めっちゃ普通に音出てます!普段通勤時に聞いてるMP3プレーヤとそんなに変わりはありませんでした!

久々にマイコン動かしてて達成感がありました。

 写真の上ちょっと右に写ってる半固定抵抗が左右のボリュームです。その下に見えるのが、秋月で購入したステレオミニジャックです。

 -----------------------------------------------------------------------
2012/05/5

イヤホンではイマイチ動いてる感じがしないので、スピーカーを繋いでみました。秋月で150円、250円で売ってるスピーカーなので小さいのかと思ったら、エライでかい。。常時接続は重いし、持ち運び不便なので、もう使うことないかも。。。
というわけで、記念に動画をアップです。

0 件のコメント:

コメントを投稿