さて前回はATTINY202に書き込むためのUPDIプログラマーを作って環境を整える所まででしたね。
お金があれば、ATMEL ICEというデバッガ―を買えばICPからUPDIまでサポートしているようですが
いまは秋月でも3万円くらいするみたいです。
しかも高電圧プログラムには対応していません。
今買うなら、Adafruitのこれが高電圧プログラムもできてよさげです。
このプログラマー、もともとはWagnerさんのオープンソースハードウェアをもとに
開発したそうです。
AVR-Programmer /SerialUPDI_HV_Programmer
ソフトの世界はGNUって、オープンソースの開発も一般的ですがハードもあるんですね。
回路図に書かれているライセンスがCC-BY-SAとあるので、これがオープンソースということみたいです。
DC-DCで12Vを作って、USBserialが通信前にRTSを”L"に下げたタイミングで
150uSのパルスを作っているゲナです。部品さえ手に入れば簡単そうですね。
このタイプは次回の宿題としましょう(滝汗;)
閑話休題:前に開発したATTINY85のTV-B-GONEをベースにしたIRリモコンのファーム
ウェアを新しいATTINY202に移植する目途が立ちました。
ATTINY202はFlashが8kBあるATTINY85に比べて、2kBしかFlashメモリがありません。
そのため、各種メーカのTVリモコンざっと40種類くらい乗せていた元のプログラムに対し
5~6種類のIRリモコンコードに削って実装しました。
8ピンしかなく、スイッチも3個しか付けられないので問題はないでしょう。
プログラムに目途が立ったので、試作機を作ってみました。
さっそくブレッドボードで開発したソフトを書きこんで動作させました。
ATTINY85で作ったオリジナルと同様に、RESETボタンを押すと再起動して同じリモコン
コードを発信するところから始めました。
あれ、電源ON時はソフトが流れるが、RESETボタンを押しても反応しない!?
外部RESETがアサインされているPA0はプログラムのためのUPDIが割り当てられています。
どうも外部RESETを使うためには、FUSEを書き換えて、PA0をRESETにしないといけないようです。
UPDIが無くなるので、次の書き換え時は高電圧書き込み器が必要になります。
また20PくらいのATTINYでPB4を持っているCPUなら、AltanateでPB4にRESETを出せるそうです。
うんばば~、ATTINY85で慣れた内容が新しいATTINYシリーズでは全部変わっているじゃ
ないですか!? ネットに情報も少ないのでデータシートを読み込んで、英語のフォーラムも
チェックせんばなりません。これじゃぁ、仕事のようです(現在無職なんですけどねw)
仕方ない、すべての動作はSW0, SW1、SW2の3個のスイッチのピン変化割り込みを使いましょう。
ところが、割り込みの仕様も変わっているんですよ、これが。
ここは試行錯誤が必要なので、次回に報告しますね。
それじゃぁ、おやすみなさい