割込みタイマーによるカウンタを使った delay_ms に実装しなおしたら 1MHz で動かしても符号が著しく遅くなることがなくなった。
この状態で消費電流を測る
- アイドル状態 0.38mA
- パワーダウン状態 62uA
- キーイング中 0.55mA
delay 中も sleep するようにしたのでキーイング中の消費がだいぶ減ってる。
常時キーイングしてても144日ぐらい持つ。普通ありえないので、1日あたり2時間キーイングとすると、771日でだいたい2年持つ計算 (実際は自然放電されるからもっと短いけど、十分長い)
さらに減らすにはどうしたらいいだろう。チップスペック的にはパワーダウンモードだと0.1uA未満しか流れないみたいだけど、現状の回路だと多少流れてる。プルアップしてるのがわるい?
スリープ前にピン設定を変える
リグとの接続を見る端子がプルアップしているのをスリープ時にオフにすればいいことがわかった。これで
- アイドル状態 0.38mA
- パワーダウン状態 10.8uA
- キーイング中 0.55mA
これで1日2時間キーイングで1440日に…
アイドル中、キーイング中の消費電力はこれよりもっと減らせるだろうか……
ISP Programmer の罠
AVR ISP Mark II を繋いでいると、パワーダウンモードでも10uAほど流れるようだ…… なんとはずしただけで 0uA (測定限界未満) になってしまった。これで同条件で 1693日持つ計算になった。上のプルアップを一時的にやめるというのもやる必要がなかった。