本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ATxmega パワーダウンしても消費電流1mA)

ATxmegaのパワーダウンモードで消費電流を1mAまで下げる方法

2023/10/20 20:42

このQ&Aのポイント
  • ATMEL(現在はmicrochip)のマイコンATxmega64A3Uでは、パワーダウンモードに移行すると消費電流を1uA程度まで下げることができるが、実際に計測すると約1mA程度の消費電流が発生してしまう。
  • パワーダウンモードに設定すると、各ポート端子は入力インピーダンス状態にはならない可能性がある。
  • ポートEやポートFに接続されているディップスイッチの状態によって消費電流が影響を受けている可能性がある。
※ 以下は、質問の原文です

ATxmega パワーダウンしても消費電流1mA

2021/10/06 18:58

現在ATMELのマイコン(現在はmicrochip)ATxmega64A3Uでプログラミングを行っています。

https://avr.jp/user/DS/PDF/xmegaA4U.pdf

このマイコンの機能で、パワーダウンモードというモードに移行すると、消費電流を1uA程度まで下げられるというので試してみました。
しかし、テスターで計測してみると、約1mA程度まで消費してしまっています。

ポートE、ポートFにディップスイッチを接続していて、ONにすると消費が上がり、OFFにすると消費が下がります。

なので、ポートE、ポートFにプルアップ抵抗が設定されてしまっているように感じます。
ただ、パワーダウンモードに設定すると自動的に各ポート端子は入インピーダンス状態にはならないのでしょうか?


どうぞ、ご教示の程よろしくお願い致します。

質問者が選んだベストアンサー

ベストアンサー
2021/10/06 21:09
回答No.1

そうですね。パワーダウンモードにしても出力ポートの方向は変わりませんよ。もしそうしたければパワーダウンモードに入る前にプログラムでDIRを入力にすればよいだけですからそういう仕様になっているかと。
普通にH/Lを出力している出力ピンもソース/シンク電流を流そうと思えば流せるはずです 
もし勝手に入力モードになってしまうとCPUの周囲の回路に影響がでてしまいますからね。

お礼

2021/10/11 18:42

回答頂きありがとうございます。
パワーダウンモードに移行してもポートが入インピーダンスにならないことを確認しました。確かに考えてみればそうですね。

今回のディップスイッチが接続されているポートE,Fのプルアップ抵抗はパワーダウンモードに移行するプログラムの前で、


(例)
PORTF.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN4CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN5CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN6CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN7CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


PORTE.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


このようなプログラムで、ディップスイッチがONでGNDに接続されたとしてもハイインピーダンスで電流消費は軽減されたことを確認できました。

質問者

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する

その他の回答 (3件中 1~3件目)

2021/10/06 22:15
回答No.3

https://avr.jp/user/DS/PDF/xmegaA.pdf

これの8.5に指南が書いてます。

お礼

2021/10/11 18:46

回答頂きありがとうございます。
パワーダウンモードに移行してもポートが入インピーダンスにならないことを確認しました。確かに考えてみればそうですね。

今回のディップスイッチが接続されているポートE,Fのプルアップ抵抗はパワーダウンモードに移行するプログラムの前で、


(例)
PORTF.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN4CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN5CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN6CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN7CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


PORTE.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


このようなプログラムで、ディップスイッチがONでGNDに接続されたとしてもハイインピーダンスで電流消費は軽減されたことを確認できました。


今までは約1.5mAだったものが約1mA程度まで電流消費が少なくなりました。
基板作成者によると、マイコン以外に0.6mA程度常時食っているICもあるとのこと。
もしかしたらあと0.4mA程度減らせる可能性があるようです。


まだ、adcとかの停止をちゃんと確認していないのでトライしてみたいと思います。

質問者
2021/10/06 21:53
回答No.2

CPUだけはその消費電力になるでしょう。
入力ポートについては、こんな質問を書く時間でデータシートを読めばわかるはずです。
勝手にハイインピーダンスなんてされたら、ピン変化割り込みでウェークアップ出来なくなるじゃないですか。
スリープ時に電力を消費したくないなら、自分でそのようにプログラムするんです。

ウォッチドッグやBODを動かしてたらそれ用のオッシレータも動きますし、その他の周辺機能も意図的に停止しなければウェークアップ用に動作し続けて電力を消費するでしょう。

周辺機能部の消費電流も書いているはずです。

お礼

2021/10/11 18:45

回答頂きありがとうございます。
パワーダウンモードに移行してもポートが入インピーダンスにならないことを確認しました。確かに考えてみればそうですね。

今回のディップスイッチが接続されているポートE,Fのプルアップ抵抗はパワーダウンモードに移行するプログラムの前で、


(例)
PORTF.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN4CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN5CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN6CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTF.PIN7CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


PORTE.PIN0CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN1CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN2CTRL = (PORT_OPC_TOTEM_gc); // high-impedance
PORTE.PIN3CTRL = (PORT_OPC_TOTEM_gc); // high-impedance


このようなプログラムで、ディップスイッチがONでGNDに接続されたとしてもハイインピーダンスで電流消費は軽減されたことを確認できました。


今までは約1.5mAだったものが約1mA程度まで電流消費が少なくなりました。
基板作成者によると、マイコン以外に0.6mA程度常時食っているICもあるとのこと。
もしかしたらあと0.4mA程度減らせる可能性があるようです。

質問者

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。