ほとんどの組み込み設計のLEDが反転しているのはなぜですか?


36

私は、すべての評価ボードで、この時点までに持っていたことに気付きました。LEDはすべてアクティブローでマイクロコントローラポートに接続されていました。安全性の観点から、アクティブな低RESETラインなどを使用する方が良いことを理解しています。しかし、なぜLEDなのか?


21
昔、NMOSおよびNPNトランジスタは、PMOSまたはPNPよりもはるかに強力でした。そのため、ロジック入力が電流をソースするのではなくシンクするように、LEDを配置する習慣がありました。それはほとんど問題ではありませんが、古い習慣は一生懸命に死にます。私は時々LEDを別の方法で接続しました。IOの現在の制限を尊重する限り、正常に機能します。
mkeith

21
多くの場合、マイクロコントローラのIOピンがソースよりも多くの電流をシンクできる場合があります。これにより、チップ全体の合計最大電流源を超えることなく、より明るいLEDを実現できます。もちろん、走行距離は異なる場合があります。常にデータシートを確認してください。
-Wossname

3
TTLはアクティブLowドライブの概念を継承し、CMOS I / Oは常に非アクティブHighまたはアクティブ入力の有無にかかわらずフローティング入力です。したがって、リセット後にLEDが消灯
トニースチュワートサニースキーガイEE75

1
歴史的注記:TTL入力は高にフロートし、入力を低に駆動するには、そこから電流を引き抜く必要がありました。そのため、TTL出力は低状態では大きな電流を「シンク」できなければならず、高状態では多くの電流を「ソース」する必要はありませんでした。(実際、オープンコレクター出力を備えたTTLパーツは、高状態では電流をまったく供給できませんでした。)
ソロモンスロー

2
もう一つのポイント。「古き良き時代」のLEDは非常に非効率的で、合理的に見えるようにするには20mAが本当に必要でした。最近では5mAが眩しいので、通常、ソースやシンクは問題になりません。
ダークブルーア

回答:


42

MCU I / Oピンの電流がシンク電流よりも弱いことがよくあります。

典型的なCMOS MCU出力では、LOWを駆動すると、NチャネルMOSFETがオンになります。また、HIGHを駆動すると、PチャネルMOSFETがオンになります。(両方を同時にオンにすることはありません!)NチャネルとPチャネルに適用されるモビリティの違い(約2〜3の違い)のため、P-チャネルデバイスは、スイッチと同様の「品質」を示します。一部はその余分な努力に行きます。しない人もいます。そうでない場合、電流をシンク(Nチャネル)またはソース(Pチャネル)する能力が異なります。

それらのいくつかはほぼ対称的であり、それらは沈むことができるのとほぼ同じ量を調達できる。(これは、電源レールへのスイッチと同様に、グランドへのスイッチとほぼ同等であることを意味します。)しかし、追加のトラブルが試みられた場合でも、2つのデバイスが完全に類似する可能性が低い他の問題があります。それでも、通常は、調達側が少なくともいくらか弱くなっています。

ただし、最終的な分析では、データシート自体を見て確認することをお勧めします。以下はPIC12F519の例です(Microchipの最も安価な部品の1つで、まだデータ用の書き込み可能な内部不揮発性ストレージが含まれています)。

このチャートは、CPUがV C C = 3を使用している場合のLOW出力電圧(縦軸)対LOWシンク電流(横軸)を示していますVCC=3V

ここに画像の説明を入力してください

このチャートは、CPUがV C C = 3を使用している場合のHIGH出力電圧(垂直軸)対HIGHソース電流(水平軸)を示していますVCC=3V

ここに画像の説明を入力してください

同じシンク機能とソース機能の両方を見せようとさえしないことは簡単にわかります。

それらを読むには、両方のチャートで同じような大きさの電流を選択します(非常に難しいでしょう?)5を選択しましょう5mA最初のチャートの mAおよび4mA2番目の mA。(私たちが得ることができる限り近い。)PIC12F519は通常約ドロップします。230mV最初のものの mV、約 R L O W = 230の内部抵抗を示唆RLOW=230mV5mA46Ω600mVRHIGH=600mV4mA150Ω25C。)

そのため、この特定のMCUを直接駆動したい回路に設計する場合 2V10mAそれを配線?LOWをONと見なす必要があることは明らかです。これは、出力の電流コンプライアンスを高める外部トランジスタを必要とせずに、データシートが成功する可能性があると言う唯一の方法だからです。

[また、近くのシンク電流とソース電流での上記の計算は、互いにおよそ3倍の2つの抵抗値を示すように見えることに注意してください(約 50Ω150Ω


こんにちは、私のコメントを下のOlinの例で見て、再考してください。MCUがそのように使用され、ロジックチップが一般的だったと言っても過言ではありませんが、最近はそうではありません。マイクロチップは、あなたが二人とも見た例外のように見えますが、量産市場ではほとんどありません:
TonyM

@TonyM約10年前に、MSP430からMicrochip PICデバイスまで、無数のデバイスをテストしました。多くの場合、MCUのソース機能とシンク機能ははるかに近くなってますが、ソース機能がシンク機能以上であることがわかったのは1つだけです。そして、それは、1つのPINのみがそのように指定され、達成されたデバイスにありました。それ以外の場合、それらはすべて低いドライブを示しました。私が提供したデバイスの例のポイントまでではありませんが、知る価値があるほど十分です。たとえば、MSP430は、約60オームのシンクと約100オームのソースを提供します。
ジョンク

@TonyMしたがって、詳細はもちろん異なりますが、一部のデバイスは他のデバイスよりも近い場合があります(時には非常に近くなります)、ポイントは残ります。ここでの答えを改善するために、検討する可能性のあるシンク電流とソース電流の詳細な曲線を提供する特定のデバイスがありますか?選択したデバイスが動作する必要があるとしましょうVCC=3V

今、あなたは尋ねています、私はすべてを閉じました。Silicon Labsの部分を見てください。通常はNXPのデータシートが良いので、少し再確認する必要があります。しかし、私の例では、今日のロジックチップはバランスが取れており、その唯一の掘り込みが不均衡であることがわかります。これらの出力にLEDをはっきりと掛けることができ、正常に機能します。1.6 mAのシンクと0.4 mAのソースを備えた74LS出力、4対1の比率など、古いロジックがなくなったことを確認するために、出力を実際に正確にバランスさせる必要はありません。だから、ポイントが残っているとは言えない。それは、ほとんどただの古い習慣が浸透しているだけだ。あなたがマイクロチップだけを愛していない限り:
TonyM

@TonyM私のポイントは、1つのデバイスに関することではなく、データシートを見て関連する健全性チェックを行うことです。また、いくつかの違いを予測することは不合理ではありません。また、選択肢がある場合は、今日でもアクティブLOWを使用する方が少し安全であることがわかります。しかし、常に確認してください!! 明らかに、一部のアプリケーション(LEDなど)では、20年前よりもはるかに高い可能性が今日あります。しかし、OPは「なぜ?」について尋ねています。彼らは見つけたものを見つけます。私の答えはその質問に対する答えです。3Vでのいくつかのデバイスのいくつかの曲線(テーブル行ではない)を引き続き見たいです。
ジョンク

19

マイクロコントローラの出力ピンは、ハイ状態でソースするよりもロー状態でより多くの電流をシンクできることがかなり一般的です(以前ほど一般的ではありませんが)。その結果、設計者は、LED、またはグランドとピンの間にではなく、電源とピンの間に(マイクロコントローラーピンに対して)大電流を必要とするものを置くことに慣れました。マイクロに対称ソース/シンク機能がある場合、これは必要ありませんが、害もありません。

たとえば、PIC 16F1459(かなり最近の、確かに主流の生産部分)データシートの抜粋です。

同じ電源電圧で出力低電圧の場合の電流が出力高電圧の場合よりも高いことに注意してください。また、シンク電流は600 mVの上昇に対して指定され、ソース電流は700 mVの低下に対して指定されています。全体として、このマイクロの通常のI / Oピンにはかなり強力なローサイドドライバーがあります。

多くの新しいマイクロは対称型であり、特にそもそもソース/シンク機能をあまり持たないマイクロは明らかにそうです。

LEDがデジタル出力で処理できるよりも多くの電流を必要とする場合、または少なくとも処理させたい以上の電流を必要とする場合は、外部トランジスタを使用する必要があります。ローサイドスイッチは自然でシンプルな選択です。次に、LEDが電源とこのトランジスタの間に接続されます。


1
こんにちは、あなたの答えの修正:[ マイクロコントローラーの出力ピン、ハイ状態でソースするよりもロー状態でより多くの電流をシンクできることかなり一般的でした。過去10年以上のマイクロコントローラーのバランスのとれた出力は、シンクするのと同じくらいの量を供給します。 ]すべてのARMのように。ありがとう。
トニーM

1
@Tony:非対称のソース/シンクはまだ一般的ですが、以前よりは少なくなりました。かなり新しいPIC 16F1xxx(特に16F1359)の部品の1つをチェックしました。5 V Vddの場合、高出力は700 mVのドロップで3.5 mAをソースできます。低出力では、600 mVの降下で8 mAをシンクできます。これは、現代のマイクロスであっても、決して遠くはありません。
オリンラスロップ

1
PIC16F1xxxxは、古いPIC16Fxxxラインからのアップグレードですが、依然として古い技術です。これらはすべて25%typの広い許容差で可能な限り近く対称になりました。および1 / Vddに敏感。
トニー・スチュワートサニースキーガイEE75

1
ご覧いただきありがとうございますが、マイクロチップの部品は誤解を招くように見えます。見上げたところ:Iol = Ioh = 20 mAのNXP P89LPC933(8051、2004); Iol = Ioh = 4 mAのNXP LPC1111(ARM、2010); Iol = Ioh = same(設定可能)mAのTI OMAP5910; Iol = Ioh = 8 mAのTI TMS320C620; Silicon Labs EFM32GG380(2014)(Iol = Ioh = same(設定可能)mA)シンク上の欠落している「-」を無視します。私のデータシートライブラリで5分間の短い作業を続けてもよかった...個人的に、私は何十年も不均衡なものを見たことはありません。私の以前のコメントと同様に、あなたの答えを再編集してもらえますか?
トニーM

1
@OlinLathrop「6F1xxxシリーズは、最近の古い16Fxxxシリーズと同等です。」はい、私はそれを知っていますが、彼らはRdsOn仕様をアップグレードしないことを選択しましたので、Vol、Vohは同一であるため、Qはストリップライン特性とリンギングに影響するレガシーボードデザインで変更されません。制御されていないインピーダンストラック上でドライバーZを半分に変更すると(誘導性を読み取る)、リンギングから誤ったエッジが発生する可能性があります)。Q = 2pi * f *ソースドライブのL(f)/ ESR
トニースチュワートサニースキーガイEE75

9

プルダウンデザインを使用することにより、1.8V で5Vのトレラントを使用して、5V電源でデバイス(LEDなど)を切り替えることができます。、外部コンポーネントなしでマイクロコントローラーをます。

(オープンドレインが構成された)ピンがプルダウンされていない場合、ピンはフローティングになります。電流が流れないため、電圧は5VのLEDの電源電圧にフロートします。これは一部の低電圧マイクロでは問題ありませんが、すべてではありません。

このようにして、LEDを電源ラインから直接実行し、マイクロに低電流電圧コンバーターを使用できます。これは、たとえばを使用する唯一の方法です。ブルーは、コンポーネントを追加せずに1.8vマイクロで主導します。

例えば、NXP LPC81xMシリーズのピンは、マイクロに電源が供給されている場合、1.8vでも5v許容です。

NXP LPC81xMのデータシート

データシートからの抜粋


0

なぜならオープンドレイン MOSFETは、一般にプッシュプルより多くの電流をシンクし、時には、より広い電圧範囲を許容します。オープンドレイン付きのLEDの使用は、アクティブLow構成でのみ機能します。マイクロによって異なりますが、一部はプッシュプルのみです。

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