マイコン工作実験日記

Microcontroller を用いての工作、実験記録

ボリューム・ラベルを付けてみる

2013-02-10 20:20:54 | Weblog
自作のMiniSAM3ボードに付いているDataFlashですが、今後の使い勝手を良くするためにソフトを用意していこうと思っています。構想としては、次のように作業を進めていくつもりです。
  1. まずは、FatFSを載せて、アプリからのアクセス手段を用意する。
  2. 次にUSB MSCドライバを作って、PCからDataFlashへファイル転送できるようにする。
  3. フォントファイルをフラッシュにコピーして、LCD表示に使えるようにする。
以前製作したBlueSAMでのLCD表示を近くで見るとドットが目立ち、その前に作ったMP3プレーヤと比べるとあまりに見劣りするのが気になっていたので、この機会に改善してやろうと思い立った次第です。




両者の違いは画面サイズだけではなく、MP3プレーヤではアンチエイリアス処理を施して表示していたことが表示の質に大きく貢献しています。BlueSAMの表示もちゃんとアンチエイリアス処理してやれば、もっと綺麗になるだろうと思いわれます。表示処理に時間がかかり、スクロール表示が遅くなると予想されますが、どの程度遅くなるか試してみようかと思います。







まずは第1歩としてFatFsから。最新のR0.09bではボリューム・ラベルの設定/取得ができるようになったので、この機能を使ってみました。DataFlashの識別番号をラベル名に使おうかと考えていたのですが、内容がイマイチだったこともあり、SAM3Sの固有識別番号の方をラベル番号に使うこととしました。FatFsを載せる作業はこれまで何度も行っているので、特に問題もなく終了。ラベル付けの動作を確認しまいした。



上記のログの意味は次のとおりです。
  1. 最初にdf chipでデータフラッシュのチップ全体を消去。
  2. fatコマンドを使ってマウント(f_mount)後、ラベルの読み出し(f_getlabel)を試みるが、ファイルシステムが無いのでエラーとなる。エラーを検出して、f_mkfsをおこない、f_setlabelでラベル付けしておく。
  3. 再度マウントすると成功するので、f_getlabelで取得したボリューム・ラベルを表示。