GPIOラインからICに電力を供給する


10

Liコインセルから電力を供給される低電力アプリケーションがあります。選択したMCUで十分な睡眠電流を達成しました。

ただし、アプリケーションADC ICは別の問題です。非アクティブ時の900µA-コインセルアプリケーションには大きすぎます。

それで、ADCが使用されていないときに、ADCへの電力を分離しないのはなぜだと思いました。2つのアイデアが思い浮かびました:ADCのVddのハイサイドFET、またはADCのVdd(またはVss)ピンをMCU GPIOピンの1つに接続するだけ(電流がMCUのソース/シンク仕様内にあると想定)。

このアイデアについてはたくさんの記事やアプリのノートなどがあると思いましたが、まだオンラインで何かを見つけることはできません。実験を始める前に、関連する記事やアプリのノートを誰かにオンラインで教えてもらえますか?それとも単に悪い考えですか?もしそうなら、なぜですか?

(そうです、ほとんどのMCUにはADCが組み込まれていることを知っています。クエリの範囲を超える理由のため、私は本当にこの外部ADC ICを使用する必要があります。)

ありがとう!


ADCのモデルは何ですか?
Nick Alexeev

回答:


8

通常、GPIOピンを介してデバイスに電力を供給することはお勧めできません。非常に低い電力の状況では、おそらくそれでうまくいくかもしれませんが、非常に厳しい制約がない限り、それをお勧めしません。

ADCの要件がピンの駆動能力よりも低いことを確認したことはすでに説明しました。これは通常、多くの人がチェックを気にしません。消費量が必要な制限内であれば、その数で問題ない可能性があります。ただし、ADCからの過渡電流要件もGPIOドライブ機能に含まれていることを確認してください。少なくとも、ADC電源に適度に重いデカップリングが必要です。GPIO出力は低インピーダンスの電源ラインではなく、過渡電流要件への応答が遅くなることに注意してください。

第2に、ADCを使用しているため、uCに組み込まれていないADC(これは非常に低い消費電力で行う必要があることです)であるため、次のような要件があると思います。内部ADCによってtが満たされた。供給ラインではなく、さらに重要なことには、マイクロコントローラーのGPIOであるGPIOは、uCのクロック周波数、その高調波、およびおそらくサブハーモニクスによって確実に汚染されます。また、かなりの電流を流すことになるので、他の効果も取り入れても驚かないでしょう。使用するGPIOとデカップリングの重さによっては、SPI / I2Cの小さなコンポーネントが表示されたり、電源に何が入っているかがわかる場合もあります。ADCの分解能とノイズ性能が重要な場合、

ハイサイドFETの方がはるかに優れており、安全です。また、LDOなどの、イネーブル制御を備えた任意の数の電力関連ICの使用を検討することもできます。ADC電源に近いLDOもパフォーマンスの向上に役立ちます。ただし、これは、ADCがわずかに低い電圧で実行する必要があることを意味します。これは、単純なトランジスタスイッチでも発生します。RdsonFETが低いと、効果は明ら​​かに小さくなりますが、存在します。

注意すべきことの1つは、非給電ICのデジタルラインを給電uCのGPIOに接続することは良い考えではないということです。その結果、ADCのデジタルIOを介して電源が投入され、奇妙で潜在的に危険な動作が発生します。具体的には、OFFでもADCが反応しなかったらビックリします。これは長期的な劣化を引き起こす可能性があり、そもそも省電力のメリットを享受します。うまくオフにするには、2つの間のデジタルラインごとにレベル変換バッファを使用して、出力を無効(トライステート)にする必要があります。これは、ENピンを使用するか、他のメカニズムを備えたバッファを使用して無効にすることができます(たとえば、SN74LVC1T45は、片側の電源がグランドに引き下げられた場合にトライステートになります)。スキームが有効かどうかは、バッファがオフ状態での消費、オン状態での消費、デューティサイクル(オンにしたい時間の割合)、およびADC消費(900uA)に依存します。これを行うことで節約できます。注意が必要な場合は、ADCに接続されているuC IOをトライスタットしてからシャットダウンすることで、バッファーの必要性を回避できるため、ほぼ同じ効果が得られます。


すばらしい答えです。もう1つ言及する必要があるのは、ADCはおそらく電源ピンにデカップリングコンデンサを必要とすることです。コンデンサの突入電流は、おそらくGPIOラインを混乱させるでしょう。
Rocketmagnet 2013年

5

はい、できます。すべての制約が満たされていることを確認してください。私はこれを数回行いました。マイクロコントローラの出力を使用して、電力を切り替える代わりに実際に小さな回路に電力を供給すると、スペースを節約するのに役立ちます。たとえば、あるプロジェクトでこれを使用して、必要なときにだけ超音波受信機のアナログフロントエンドをオンにしました。

出力ピンから利用可能な制限された電流の明らかな問題以外に、マイクロからのノイズがスイッチ回路に入るのを監視し、回路によって引き出される過渡電流に対処する必要があります。デジタル出力ピンのグランドにキャップを追加すると、両方の問題を解決できますが、ラインをオンまたはオフに切り替えるときにマイクロが駆動できる容量を考慮する必要もあります。

これはあなたが軽くやるべきことではありません、そしてあなたは問題を注意深く考える必要があります、しかしあなたが宿題を終えてそれでもそれが理にかなったら、先に進んでください。


5

はい、できます。そして、多くの人が持っています。たとえば、Adafruitは、adruino上のds1307 RTCに対して、2つのgpio(vccとgndとして)を使用してこれが行われていることを示しています。これは、画面に1 mAしか必要としないNokia LCDでも行われます(バックライトLEDは別の話ですが、gpioでも実行できます)。

電源は電源です。電流引き込みが少ない限り(または、MCUのポートピンでの電流引き込みによる電圧低下を許容できる場合)、それを行うことができます。

さて、それはgpio出力がどれだけクリーンであるかに依存します。一部のICは、他のICよりもわずかに汚れたラインについて文句を言う可能性が低いです。ADCは、最良の選択肢ではないものの1つかもしれません。ソースが汚れていると、ADCの分解能や信頼性に影響を与える可能性があります。外部ADCが内部ADCよりも悪くなる可能性があります。他の人が述べたように、キャップが役立つかもしれません。

ADCを焼く可能性は低いので、最善策でしょうか。配線して、いくつかのキャリブレーションテストを実行します。それが機能する場合は、それを使用してください。動作しない場合は、npnトランジスタなどの電源を使用して電力をカットします。たったひとつ。ICがオフのときにデータピンを入力に切り替え、電源ピンをオンにしてから必要なモードに切り替えるまで待ってください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.