- ベストアンサー
AVRマイコンのパワーセーブモード時の消費電流
- AVRマイコンのパワーセーブモード時の消費電流について質問させて頂きます。パワーセーブモード、パワーダウンモード時の消費電流を測定し、マニュアルとの相違について原因を知りたいです。
- AVRマイコンのパワーセーブモード時の消費電流について質問です。測定値とマニュアルの値に大幅な相違があるため、ミスの原因を知りたいです。
- AVRマイコンのパワーセーブモード時の消費電流について質問です。パワーセーブモードとパワーダウンモード時の消費電流を測定しましたが、マニュアルの値と大きく異なるため、原因を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは 仕事中に付き ちょこっと パワーセーブ時でのポート状態を確認されましたか? 必ずしもこの時は初期化(リセット)直後とは異なる状況にポートはなっているのではないでしょうか? 取りあえずこんな所です。 物理的に観測可能な症状ですので、一つ一つ観測すれば問題の箇所は見つかります。 では、がんばって下さい。
その他の回答 (1)
- kuro804
- ベストアンサー率29% (523/1762)
こんばんは よくあるのがI/Oポートの接続で プルアップ抵抗に流れる電流 入力ポートの外部への接続が未接続かハイイピーダンスによる中間電位での増加 出力ポートの入出力の電流 などの見逃しの消費電流の増加 試作などではたまに静電気破損による過剰電流。 取りあえずは、当たり前の事ですが過剰な電流がどこから流れ込んでいるか、CPUの電源端子の流入電流を観測してはいかがでしょうか? ここが正常なら、あとはポートからの流れ込みになるでしょう。
補足
ご回答ありがとうございます! ハードの環境として、 ・パワーセーブ、パワーダウンとも同一基板で測定しています。 ・I/Oポートは全て外部への接続はありません。 ・ピン状態設定は『入力・プルアップ』になります。 ソフト的には、 ・パワーセーブ、パワーダウンともはほぼ同一のソースを使用しています(相違ヶ所は下記の※印)。 ●パワーセーブ #include <avr/sleep.h> ・・・・ set_sleep_mode(SLEEP_MODE_PWR_SAVE); ・・・※ sleep_mode(); ・・・・ ●パワーダウン #include <avr/sleep.h> ・・・・ set_sleep_mode(SLEEP_MODE_PWR_DOWN); ・・・※ sleep_mode(); ・・・・ 自分的には、ソフトに問題がある気がするのですが・・・
補足
お忙しい所、ご回答ありがとうございます! >初期化(リセット)直後とは異なる状況にポートはなっているのではないでしょうか? ポートが入力設定から出力設定に変わっているということでしょうか? ポートは全て外部未接続になります。 マニュアルにパワーセーブの説明として、『この動作は、1つの例外を除いてパワーダウン動作と同じです』とあります。 1つの例外とは、『タイマ/カウンタ2の割り込みを起因としてスリープ状態から復帰可能』となります。 その為、タイマ/カウンタ2を起動している分だけ、パワーダウン時より若干電流を消費します。 ですので、ご指摘頂いた『ポート状態』の様なハード的な起因であれば、パワーダウン時でも同じ症状(電流量増大)が出ても良い気がします。 この辺が府に落ちません。 よろしくお願い致します。