電力供給されていないMCUへのUARTピン?


11

バッテリーから電力供給されるMCUを備えたUSB-UART ICを使用しています。

USB-UART ICはバッテリーではなくUSBコネクタから電源供給されるため、スイッチがオン/オフになるたびにコンソールを開く必要はありません。

回路図

この回路のシミュレーションCircuitLabを使用して作成された回路

編集:私はそれを図に描画しませんでしたが、ICには内部3.3Vレギュレータがあり、スイッチがオンのとき、すべてのVDDは3.3Vレベルにあります。

今、USBが接続されていて、スイッチがまだオフになっているのが心配です。

MCUドキュメントには、すべての入力ピンの最大定格はVDD + 0.3であり、MCUに電力が供給されていない場合は0.3 Vであると記載されています。

USB-UART側のTX / RXペアがハイになると、MCU側のピンが破壊されますか?

その場合、TX / RXペア間に何が必要ですか?


@Toor「tbh」とはどういう意味ですか?
エリオットアルダーソン

1
ゲートは、供給電圧範囲の上端で機能するためにそれを行う必要があるため、とにかく最大動作電圧まで耐えることができるはずです。Vdd + 0.3はMCUのESDクランプダイオードを基準にしていますが、MCUに電力が供給されていない場合、これらのダイオードにはクランプするレールがありません。5V対応MCUの電源を3Vからオフにして、5VをI / Oに印加した場合、これらのダイオードは3.3Vレールにクランプしようとしますが、5Vでそれらがなければブローするわけではありません。直列抵抗を使用して、上記ダイオードを流れる電流を制限できます。
DKNguyen

3
@ElliotAlderson「tbh」は、「正直に言う」ための一般的なインターネット主義です。
ハース

7
@Toorダイオードは電力レールを作成しますyoutube.com/watch?v=2yFh7Vv0Pawをご覧ください。
CL。

5
これは確かに問題になる可能性があります-理論的な損傷のリスクだけでなく、実際の電力が適用される前に以前にI / Oで電力を供給していた場合、リセット時にクリーンパワーを実行できない部品があります。"オフ"のときにボードの電源ネットが.5v-.6vにプルアップされている場合は、問題が発生している可能性があります。
クリスストラットン

回答:


14

MCUに依存しますが、ほとんどの場合、MCUを起動し、MCUを介してボードの残りの部分を起動します。MCUは実行を試み、奇妙なことをします。ボードは奇妙なことをします。ボードに十分な電流が流れると、MCUのそのピンが損傷します。

MCUがオフのとき、UART信号が0Vに留まるように調整する必要があります。使用しているUARTチップ(またはUART)に有効化ピンがない場合(使用しているUSB UARTチップは、説明しているとおりに正確に構成できます)、そして、マイクロプロセッサのVCC。


5

解決策は、ゲートをMCU VDDに接続して、USB-UARTのTXピン(ドレイン)とMCUのRXピン(ソース)間のNMOSのように単純な場合があります。

これは、USB-UARTが最大3.3 Vからトランジスタのしきい値電圧を引いた電圧までしか駆動できないことを意味します。MCUのV_IHを満たすのにこれで十分かどうかを確認する必要があります。

私は、VBUSによって(間接的に)駆動される論理ゲートを含むソリューションには懐疑的です。ロジックゲートがMCU入力をHighに駆動している限り、MCU VCCはTXドライバーをオフにするのに十分なほど低下しない可能性があります。NMOSソリューションでは、TXピンはVCCよりも低い電圧にしか駆動できないため、この種のフィードバックは不可能です。

ところで、逆方向も考慮する必要があります:MCUに電力が供給されているがUSB-UARTに電力が供給されていない場合、USB-UARTに誤って電力を供給しないようにしてください。バッテリーが予想より速くなりました。これにはソフトウェアのみのソリューションで十分です。


2

私は完全に異なるソリューションを持っていますが、使用するUSB​​チップによって異なります。

それらのいくつかは、異なるVBUSとVCCIOを持っています。この場合、uCとともにそのチップのIO部分に電力を供給できる場合があります。


1
これは良い考えですが、USBトランシーバーのデータシートを注意深く読んでください。電源が供給されない場合、一部のICは他の障害をラッチアップします。これについては、データシートの冒頭にあるAbsloute Maximum Ratingsセクションで説明する必要があります。
jherbold

1

簡単な解決策は、I / Oピンの間にいくつかの抵抗を配置することです。これにより、ピンに流れる電流が制限され、トランシーバーがuCに電力を供給できなくなります。抵抗値は、チップ間の帯域幅の制限と電流の制限のバランスです。

USBで動作するが、uCで出力が有効になるロジックバッファ。これは、他の回答のトランシーバー出力イネーブルと同じです。

コンピューターに接続しているときにuCをオフにすることには利点がありますか?そうでない場合は、5 V USB電源からuCに電力を供給できます。これを行う方法は次のとおりです。

  1. バッテリー電源がオフのときにUSB電源を選択するSPDTスイッチ。回路図のSPSTスイッチを置き換えます。
  2. ダイオード、ダイオード、理想ダイオード集積回路、または利用可能な場合にUSB電源を選択するためにuCによって制御されるMOSFET。次に、バッテリースイッチが閉じられ、USBが接続されたときに何が起こるかを考慮する必要があります。制御されないバッテリー交換はめったに良いことではありません。

7
そう思うかもしれませんが、抵抗器だけでは実際には機能しません。UART受信ラインの大きな直列抵抗でさえ、それを行いません(ただし、損傷を防ぐことができます)。問題は、いくつかの非常に低いしきい値電圧を超えるまで、実際には電流が流れないこと、さらにはクロックなしではあまり電流が流れないことです。そのため、直列抵抗を使用した場合でも、ボードの電源レールを不適切な状態になり始めた時点まで引き上げることができ、その時点でパワーオンリセットは信頼できなくなります。
クリスストラットン

同意した。私の答えをもっと詳しく教えてくれてありがとう。私は、迅速なプロトタイプソリューションを提供したいと考えていましたが、それを言うべきでした。これは絶対確実な解決策ではなく、uCの起動電流が抵抗器に十分な電圧降下を生じさせ、uCの電圧を十分に低く維持してブラウンアウトが発生しない場合にのみ機能します。
ジェルボルド

0

いくつかのトライステートバッファーが適切なソリューションになるかどうかを検討しましたか?イネーブルピンをスイッチに接続し、txからrxへの極性が正しいことを確認できます。これにより、要求する保護が効果的に提供されます。

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