音の変化は、PCのスピーカー程度では全くわからない。音量変化のときのノイズも全くない。勢いに乗って7セグLEDと音量値のEEPROMへの記録機能(5回ごとに値が異なれば記録する)を一気に書き上げる。フラッシュ消費は全部で1700バイトどまりだ。UARTを入れてもフラッシュにまだ余裕がある。これらの機能も一部を除いて順調に動いた。一時不調だったのは7セグLEDである。FPGAのときのトランジスタアレイを使った7セグLED基板を流用したのだが、どうもLEDが薄くピンによって明るさが違う。調べた結果、トランジスタアレイのドライブには適切なプルアップ抵抗が必要なことがわかった。10KではAVRのピンのドライブが不足(プルアップされすぎて点灯しっぱなし)で、47Kにするとちょうど良くなった。意外に微妙なものである。このところソフトを公開していないので、今回のブレッドボードで動いている赤外線リモコンのテストベンチのソースコードを公開することにする。ソフトSPIとバッファードUART(送信割り込みを使って高速出力が可能)のライブラリ、それに7セグLEDの表示コードが入っている。回路図はまだ試作中なので完成してから公開することにする。結線はソースコードにコメントがある。それぞれの部品の標準接続で特に問題なく動いている。UARTの部分は実装では不要だが、高速送信の出来るUARTは他に有用だと思うのであえてUARTを残した。何かの開発の参考になると嬉しい。現在のソフトでは、UARTに赤外線リモコン(Sony限定)の送信コードを行単位に出力し、キーボードから音量の上下の指示と音量値の表示が出来る。ここに例によってAVRStudioのプロジェクトフォルダーとして固めたソースを置きます。時間がなく乱雑なコードになっていることはご容赦ください。uart2313.cとUART2313.hが目玉です。2313だけでなく標準UARTを持つAVRチップで殆ど共通に使えます。11/22に公開したバージョンにはEEPROM関連にバグがありました(最初の書き込みのときボリュームが最大になってしまう)。以前のバージョンをダウンロードした方は破棄し、以下の修正版をダウンロードし直してください。(火)CQ-STARM基板のCPU換装とDE0の到着チップの換装で肝を冷やす(11/2/2010)今年2月から始めたフォトフレームプロジェクトは最終段階に入った。JPEG画像ファイルをデコードする機能の開発である(第8ステップ)。このほかに液晶モニターにFPGA基板とプロセッサー基板を取り付ける工作(第9ステップ)が残っているが、これはそう大した話ではない。こちらのほうが難易度が高い。プラットホームを整えなければいけない。前記事にあるように、現在のCQ-STARM基板の石、STM32F103VBT6は、フラッシュは128KBあるが、SRAMが20KBで、JPEGファイルをデコードするためには、SRAMの容量(24KB以上必要)が足らない。64KBのSTM32F103VET6があるが、今問題なく動いている基板のチップをはがすのはどうも抵抗があってすぐには踏み切れなかった。このままVET6を残していても、この先何か使うあてがあるわけではない。悩んでいたが、思い切って換装することにした。定番のサンハヤトの低温ハンダを取り出す。この前のFPGAのときと同じようにチップの裏面にフラックスが固着していて、とりはずしは少し難渋した。ハンダは溶けているのにチップがずれてくれない。ずらすのではなくピンセットの先端を隅に差し込み、少しこじるように浮かすと、きれいにはがれた。ハンダ吸い取り線で念入りに低温ハンダを除去し、クリーナーで基板を綺麗にする。何回目かの0.5ミリピッチICのハンダ付けである。慣れてきてこの前のようにピンの微調整もなくぴったりハンダ付けが出来た。うーむだいぶ腕が上がったぞ(しかし、これが落とし穴だった)。何も入っていない新品のCPUチップの動作テストは、JTAGのOpenOCDのコマンドである。