夏休みに音が出るまでは出来ていた自作MP3プレイヤー。
とくに休みの予定が無かったので続きをやりました。
とりあえず人のHPにのっているやつを完全にパクったのに正常に動かない。
初めの曲は再生するが、次のファイルを再生してくれない。
それは結局プログラムが間違えていた。パクった元が間違えていたから仕方ない・・・
とりあえず、ルートディレクトリのファイルを順番に再生、ループする仕様になっている。
自分的にはアーティスト別のループがしたいので、フォルダ移動とフォルダ内ループが可能な仕様に作り変えることにした。
しかし、リファレンスのファイルシステムだと出来ることに制限があり、その辺を考慮し、次のような仕様にした。
1、フォルダ階層は1段(ルートの一段下まで)
2、フォルダ名は「A」~「Z」の固定
3、フォルダを使う場合はフォルダ「A」は必ず必要且つ、「A」内に1つはファイルが必要
といった感じ。
あ、あとリファレンスが日本語(全角)に対応していないのでそこも注意が必要。
要するに、フォルダはA,B,Cと作って、ファイルも適当に「01.mp3」みたいに変更してSDカードに書き込めばよい。
本当はランダム再生機能を入れたかったが、SDカード内またはフォルダ内の全ファイルを把握する必要があり、かなり面倒・・・
乱数を作るため、RTCを使いたいところだが、32kHzのクリスタルが必要?だとすると足が空いていない。
レジューム機能もほしいが、このPICマイコン(PIC24FJ64GA002)はEEPROMが内蔵されていない。外につけるにも足が空いていない・・・
と、制限が多いがとりあえず進めることにする。
いつもなら頭の中で考えたものをプログラムをベタ書きしていき、直しながら進めるのだが、ユーザー操作によるフォルダ送りをした際のSDカードの状態に対する条件文が頭の中のメモリでは処理できなくなり・・・
フローチャート書いちまった!
会社でも書いたこと無いのに!
これによりサクサクコーディング出来たw
で、デバッグしてとりあえず意図するように動いた。
回路→ソフトと順調にすすんで、車に載せるには箱に入れなくてはならん。
そうすると今度は設計2課の仕事?です。
中学時代に東急ハンズで買った箱が使えそうだったので加工することに。
・・・・・・めんどくさい。
なんだかんだ言って箱の加工が一番大変なのだ。
家にあるもので済まそうといろいろ考えたが無理っぽい。
ホットメルで基板を固定するのが一番楽なのだが、車の車内は40度を軽く越えるので、ホットメルは溶けてしまうのだ・・・
仕方ないのでホームセンターに行き、ネジとスペーサ購入。
勢いに任せてハンドドリルでバンバン孔を空け基板固定はOK。
そこからSDカードのスロット用にスリットをドリルとカッターで
スリスリ、スリット~!
そして操作ボタン用の孔をガガッガーンと空けて完成・・・
フォルダに1曲しかないときは、曲送りをしても同じ曲が再度再生される。
ルートディレクトリにファイルが無い場合はフォルダ「A」内のファイルから再生される。
以上。