バッテリーの残量を知るために、電圧の表示を付けました。アンテナ表示の右隣りです。電池の残量アイコンの方が見た目はいいですが、減り具合を調べるためには数値で欲しいので、電圧値を表示しています。電池の出力電圧を1Mオームの抵抗2本で2分したものをA/Dで計測し、表示する際に2倍して戻しています。
当初、電池が3.8Vくらい残っている状態でも2.8Vとしか表示されなかったので、しばらく悩みました。A/Dの端子電圧を測ると3.8Vの半分1.9Vあるのに、ADCのレジスタの内容を確認すると、2.8Vの半分の1.4V相当の値しか出ていません。分圧のための抵抗として1Mオームという高抵抗値を使っているせいだと思いあたり、ADC設定のPRESCALの値を大きくしてやり、十分なサンプル・ホールド時間(SHTIM)をとるように修正したところ、期待どうりの値が出るようになりました。
充電完了直後でも表示の値は4.0です。バックライトを消灯した待ち受け状態で、8時間ほど経過した時点での表示は3.6。消費電力をさらに減らすための方策としては、
当初、電池が3.8Vくらい残っている状態でも2.8Vとしか表示されなかったので、しばらく悩みました。A/Dの端子電圧を測ると3.8Vの半分1.9Vあるのに、ADCのレジスタの内容を確認すると、2.8Vの半分の1.4V相当の値しか出ていません。分圧のための抵抗として1Mオームという高抵抗値を使っているせいだと思いあたり、ADC設定のPRESCALの値を大きくしてやり、十分なサンプル・ホールド時間(SHTIM)をとるように修正したところ、期待どうりの値が出るようになりました。
充電完了直後でも表示の値は4.0です。バックライトを消灯した待ち受け状態で、8時間ほど経過した時点での表示は3.6。消費電力をさらに減らすための方策としては、
- 現在、CODECは常時パワー・オン状態。必要ない時には、パワーダウン状態にする。
- CPUのクロックを落としてみる。
- DC/DCからの出力電圧を5Vから3.3Vに変更する。