Spec For Mintia(16) MP3プレーヤーその2
2010 年 8 月 25 日
コメントはありません
基板が出来たので、コードの移植。
まずは、ATmega128からXMEGAーA4に向けて、I/O周辺の移植。
ポートの違い、接続の違い、初期化の違い。
FatFSの修正。
タイマー割り込みの初期化。
LCD周辺コードの追加。
SPIもVS1011Eも、あわせこむ。
関数名の整理、レイヤー化。
結構いろいろある。。。ね。
それなりに時間掛けることに。
とはいえ、低レベル部分が出来てしまえば、あとはコードを持ってくるだけだ。
とりあえずは・・・絵を出すことかな。
実験段階では、ほかにタスクはなかったけど、今回はMP3のデータ転送があるので
細かく細分化しなくてはいけない。
1ライン読む度にバッファに展開し、転送。
これを最小1単位として、毎回処理をメインループに戻す。
MP3データ転送タスクもほぼ同様。
VS1011Eからの要求があれば30byte程度を転送する。
そう、ここで実は重大なことに気がついた。
先に書いた記事で、ビットレートにあわせてデータを転送しないとダメだ、と書いたが
実は、VS1011Eからの要求ピンの設定が出力になっていて、常に1が設定されていた、
つまり、常に転送要求が来てる状態。
ちゃんと入力設定にしたら、データがつぶれる事もなく再生されている。
そうすると、余計なことを考えずに転送するというのは間違いではないようだ。
これだと、実は結構、間隔が開くんじゃない?だいぶメインループに余裕がでるかも。
そんな感じで、まだまだデバッグは続く。