Warum sind LEDs bei den meisten Embedded-Designs invertiert?


36

Mir ist aufgefallen, dass auf allen meinen Evaluierungsboards, die ich bis zu diesem Zeitpunkt hatte. Die LEDs waren alle aktiv low an den Microcontroller Port angeschlossen. Ich verstehe, dass es aus Sicherheitsgründen besser ist, aktive Low-RESET-Leitungen und dergleichen zu haben. Aber warum LEDs?


21
In früheren Zeiten waren NMOS- und NPN-Transistoren viel stärker als PMOS oder PNP. Wir alle haben uns angewöhnt, LEDs so anzuordnen, dass der Logikeingang sinkt und keinen Strom liefert. Meistens spielt es keine Rolle mehr, aber alte Gewohnheiten sterben schwer. Ich habe gelegentlich LED's umgekehrt angeschlossen. Es funktioniert gut, solange Sie die aktuelle Grenze des IO respektieren.
mkeith

21
Es kommt häufig vor, dass die E / A-Pins eines Mikrocontrollers mehr Strom verbrauchen können, als sie liefern können. Dies kann zu helleren LEDs führen, ohne die maximale Gesamtstromquelle für den gesamten Chip zu überschreiten. Ihre Laufleistung kann natürlich variieren, überprüfen Sie immer das Datenblatt.
Wossname

3
TTL prägte den Begriff Active Low Drive und CMOS I / O ist immer inaktiv High oder Floating Input mit / ohne aktivem Pullup. somit LED AUS nach RESET
Tony Stewart Sunnyskyguy EE75

1
Historischer Hinweis: TTL-Eingänge schwebten hoch, und um einen Eingang niedrig zu halten, musste Strom daraus gezogen werden. Aus diesem Grund mussten TTL-Ausgänge in der Lage sein, im niedrigen Zustand einen signifikanten Strom "abzusaugen", während sie im hohen Zustand nicht viel Strom "quellen" mussten. (Tatsächlich konnten TTL-Bauteile mit Open-Collector- Ausgängen im High-Zustand überhaupt keinen Strom
Solomon Slow,

2
Ein weiterer Punkt. In "guten alten Zeiten" waren LEDs sehr ineffizient und man brauchte wirklich 20 mA, um sie vernünftig aussehen zu lassen. Heutzutage blendet 5mA, also ist Quelle oder Senke normalerweise kein Problem.
Dirk Bruere

Antworten:


42

Es ist immer noch so, dass MCU-E / A-Pins häufig einen schwächeren Strom für die Laufwerksbeschaffung haben als einen sinkenden Strom.

Bei einem typischen CMOS-MCU-Ausgang schalten sie einen N-Kanal-MOSFET ein, wenn sie LOW-Pegel ansteuern. und wenn sie HIGH fahren, schalten sie einen P-Kanal-MOSFET ein. (Sie schalten niemals beide gleichzeitig ein!) Aufgrund der Unterschiede in der Mobilität, die für den N-Kanal gegenüber dem P-Kanal gelten (um den Faktor 2 bis 3), ist ein zusätzlicher Aufwand erforderlich, um den P- Kanalgerät weisen eine ähnliche "Qualität" wie ein Schalter auf. Einige gehen zu diesem zusätzlichen Aufwand. Manche nicht. Wenn nicht, ist die Fähigkeit, Strom zu entnehmen (N-Kanal) oder zu beziehen (P-Kanal), unterschiedlich.

Einige von ihnen sind insofern fast symmetrisch, als sie fast so viel beschaffen können, wie sie sinken können. (Das bedeutet, dass sie ungefähr so ​​gut auf Masse geschaltet werden können wie auf die Stromversorgungsschiene.) Aber auch wenn zusätzliche Probleme versucht werden, gibt es andere Probleme, die es unwahrscheinlich machen, dass sich die beiden Geräte vollständig ähneln nach wie vor ist in der regel die beschaffungsseite zumindest noch etwas schwächer.

Letztendlich ist es jedoch immer eine gute Idee, sich das Datenblatt selbst anzusehen. Hier ist ein Beispiel aus dem PIC12F519 (einer der billigsten Teile von Microchip, der noch einige interne, beschreibbare nichtflüchtige Speicher für Daten enthält.)

Diese Grafik zeigt die LOW-Ausgangsspannung (vertikale Achse) im Verhältnis zum LOW-Sinkstrom (horizontale Achse), wenn die CPU :VCC=3V

Bildbeschreibung hier eingeben

Diese Grafik zeigt die HIGH-Ausgangsspannung (vertikale Achse) im Verhältnis zum HIGH-Quellstrom (horizontale Achse), auch wenn die CPU :VCC=3V

Bildbeschreibung hier eingeben

Sie können leicht erkennen, dass sie sich nicht einmal die Mühe machen, die gleichen Fähigkeiten wie die Beschaffung von Strom zu zeigen.

Um sie zu lesen, wählen Sie einen Strom, der auf beiden Diagrammen in ähnlicher Größenordnung ist (sehr schwer, ist es nicht?) Wir wählen auf der ersten Grafik und auf der der zweite. (Ungefähr so ​​nah wie möglich.) Sie können sehen, dass der PIC12F519 beim ersten typischerweise um , was auf einen Innenwiderstand von etwa hindeutet . In ähnlicher Weise können Sie sehen, dass der PICF519 im zweiten Diagramm typischerweise um , was auf einen Innenwiderstand von etwa5mA4mA230mVRLOW=230mV5mA46Ω600mVRHIGH=600mV4mA150Ω. Nicht sehr ähnlich. (HINWEIS: Ich habe Daten aus den Kurven für .)25C

Wenn Sie also diese spezielle MCU in eine Schaltung in der Sie eine direkt bei etwa , wie würden Sie sie verdrahten? Es ist klar, dass Sie LOW als ON betrachten müssen, da dies die einzige Möglichkeit ist, die besagt, dass Sie möglicherweise überhaupt erfolgreich sind, ohne dass ein externer Transistor erforderlich ist, um die Stromkonformität des Ausgangs zu steigern.2V10mA

[Sie können auch beachten, dass die obigen Berechnungen bei nahegelegenen Sink- / Sourcing-Strömen zwei Widerstandswerte anzeigen, die ungefähr einen Faktor drei voneinander haben (ungefähr vs .) Dies ist wahrscheinlich nicht zufällig zu den eingangs erwähnten Unterschieden in der Mobilität, die zwischen P-Kanal- und N-Kanal-Mosfets bestehen.]50Ω150Ω


Hallo jonk, bitte lies meine Kommentare und Beispiele zu Olin weiter unten und überdenke es dir nochmal. Es ist fair zu sagen, dass MCUs früher so waren und Logik-Chips im Allgemeinen, aber heutzutage nicht mehr. Mikrochip scheint eine Ausnahme zu sein, die Sie sich beide angesehen haben, aber sie sind kaum der Volumenmarkt da draußen :-)
TonyM

@TonyM Vor ungefähr zehn Jahren habe ich unzählige Geräte getestet - vom MSP430 bis zu Microchip PIC-Geräten. Während die MCUs in vielen Fällen in Bezug auf Quell- und Senkfähigkeiten viel enger zusammenrücken, gab es NUR einen Fall, in dem die Quellfähigkeit der Senkfähigkeit entsprach oder diese überstieg. Und das war in einem Gerät, in dem NUR EINE PIN so festgelegt und erreicht wurde. Ansonsten wiesen alle einen geringeren Antrieb auf. Nicht bis zu dem Punkt des Beispielgeräts, das ich angegeben habe, aber weit genug, dass es sich lohnt, es zu kennen. Der MSP430 bietet beispielsweise eine Senke mit ca. 60 Ohm und eine Quelle mit ca. 100 Ohm.
Jonk

@TonyM Obwohl die Details natürlich variieren und einige Geräte näher (manchmal viel näher) sind als andere, bleibt der Punkt bestehen. Haben Sie ein bestimmtes Gerät, das detaillierte Kurven über Senken- und Quellenströme liefert, die ich untersuchen könnte, um meine Antwort hier zu verbessern? , das ausgewählte Gerät muss mit , damit ich Äpfel für Äpfel behalten kann. Ich würde gerne die Antwort verbessern. VCC=3V
Jonk

Jetzt fragst du, ich habe sie alle geschlossen. Schauen Sie sich den Teil von Silicon Labs an, und normalerweise sind NXP-Datenblätter gut. Ich muss das gleich noch einmal überprüfen. Aber meine Beispiele zeigen, dass Logik-Chips heutzutage ausgeglichen sind und dass sie nur tief graben, wenn Sie ein Ungleichgewicht feststellen. Sie können eine LED deutlich an diesen Ausgängen aufhängen, und sie funktionieren einwandfrei. Die Ausgänge müssen nicht wirklich genau abgeglichen sein, um zu sehen, dass die alte Logik weg ist, wie 74LS-Ausgänge mit 1,6-mA-Senke und 0,4-mA-Quelle, ein 4-zu-1-Verhältnis. Man kann also nicht sagen, dass der Punkt bleibt, es sind meist nur alte Gewohnheiten, die durchdringen. Es sei denn, Sie lieben nur Microchip :-)
TonyM

@TonyM Mein Punkt ist mehr das Betrachten von Datenblättern und das Durchführen der zugehörigen Sicherheitsüberprüfungen als ein Gerät. Es ist jedoch auch nicht unvernünftig, einen Unterschied zu antizipieren . Und wenn Sie die Wahl haben, werden Sie vielleicht feststellen, dass die Verwendung von active-LOW auch heute noch ein bisschen sicherer ist. Aber immer PRÜFEN !! Für einige Anwendungen (z. B. LEDs) ist dies heute eindeutig wahrscheinlicher als vor 20 Jahren. Aber das OP fragt nach "Warum?" sie finden, was sie finden. Meine Antwort ist eine Antwort auf diese Frage. Ich möchte immer noch einige Kurven (keine Tabellenzeilen) eines Geräts bei 3 V sehen.
Donnerstag,

19

Es ist ziemlich häufig (obwohl nicht mehr so ​​häufig wie früher), dass Mikrocontroller-Ausgangspins im niedrigen Zustand mehr Strom aufnehmen können als im hohen Zustand. Infolgedessen gewöhnten sich die Designer daran, LEDs zu platzieren oder etwas anderes, das einen hohen Strom (für einen Mikrocontroller-Pin) zwischen Strom und Pin anstelle von Masse und Pin benötigt. Wenn das Mikro über symmetrische Quellen- / Senkenfunktionen verfügt, ist dies nicht erforderlich, aber auch nicht schädlich.

Hier ist zum Beispiel ein Ausschnitt aus dem Datenblatt PIC 16F1459 (ein relativ neuer und mit Sicherheit Mainstream-Produktionsteil):

Beachten Sie, dass die Ströme für das Ausgangs-Niederspannungsgehäuse bei gleicher Versorgungsspannung höher sind als für das Ausgangs-Hochspannungsgehäuse . Die Senkenströme sind für einen Anstieg von 600 mV spezifiziert, während die Quellenströme für einen Abfall von 700 mV spezifiziert sind. Insgesamt verfügt dieses Mikro über wesentlich stärkere Low-Side-Treiber an den regulären E / A-Pins.

Viele neuere Mikros sind symmetrisch, anscheinend vor allem solche, die in erster Linie nicht viel Quellen- / Senkenfähigkeit haben.

Wenn die LED mehr Strom benötigt, als ein digitaler Ausgang verarbeiten kann, oder zumindest mehr, als Sie verarbeiten möchten, müssen Sie einen externen Transistor verwenden. Ein Low-Side-Schalter ist die natürliche und einfache Wahl. Die LED ist dann zwischen Strom und diesem Transistor geschaltet.


1
Hallo, eine Korrektur für Ihre Antwort: [Es war ziemlich üblich, dass Mikrocontroller-Ausgangspins im niedrigen Zustand mehr Strom verbrauchen konnten, als sie im hohen Zustand liefern können. Mikrocontroller der letzten 10 Jahre haben ausgeglichene Ausgänge, die so viel liefern, wie sie verbrauchen. ] Ich stimme voll und ganz zu, dass dies bei 8048, 8051, 6811 und allen alten Geräten der Fall war, aber nicht bei Post-2005-Geräten oder ähnlichen Geräten wie alle Waffen. Vielen Dank.
TonyM

1
@ Tony: Asymmetrische Quelle / Senke ist immer noch verbreitet, obwohl weniger als früher. Ich habe gerade eines der Teile des PIC 16F1xxx (speziell 16F1359) überprüft, die ziemlich neu sind. Bei 5 V Vdd kann ein hoher Ausgang 3,5 mA mit einem Abfall von 700 mV liefern. Ein niedriger Ausgang kann 8 mA mit einem Abfall von 600 mV senken. Dies ist auch bei modernen Mikros noch lange nicht der Fall.
Olin Lathrop

1
Die PIC16F1xxxx sind ein Upgrade der alten PIC16Fxxx-Linie, aber immer noch eine alte Technologie. Sie sind jetzt alle so nah wie möglich symmetrisch mit großen Toleranzen von 25% typ. und 1 / Vdd empfindlich.
Tony Stewart Sunnyskyguy EE75

1
Vielen Dank fürs Hinschauen, aber das Microchip-Teil sieht irreführend aus. Ich sah nach: NXP P89LPC933 (8051, 2004) mit Iol = Ioh = 20 mA; NXP LPC1111 (ARM, 2010) mit Iol = Ioh = 4 mA; TI OMAP5910 mit Iol = Ioh = gleicher (konfigurierbarer) mA; TI TMS320C620 mit Iol = Ioh = 8 mA; Silicon Labs EFM32GG380 (2014) mit Iol = Ioh = gleicher (konfigurierbarer) mA. Ignorieren Sie das fehlende "-" am Waschbecken. Hätte weitermachen können, nur 5 Minuten in meiner Datenblattbibliothek ... Ich persönlich habe seit Jahrzehnten keine unausgeglichene mehr gesehen. Bitte können Sie Ihre Antwort ähnlich wie in meinem vorherigen Kommentar erneut bearbeiten, um ein vollständiges Bild zu erhalten, und Ihre Antwort ist harmlos, um dies zu tun.
TonyM

1
@OlinLathrop "Die 6F1xxx-Serie ist eine neue Fortsetzung der alten 16Fxxx-Serie." Ja, das ist mir bekannt, aber sie haben sich dafür entschieden, die RdsOn-Spezifikationen nicht zu aktualisieren, sodass Vol, Voh identisch sind, damit Q sich nicht in älteren Board-Designs ändert, die die Streifenleitungs-Eigenschaften und das Klingeln beeinflussen. Das Halbieren des Treibers Z auf unkontrollierten Impedanzspuren (induktives Lesen) kann dazu führen, dass falsche Flanken klingeln. Q = 2pi * f * L (f) / ESR für Quelllaufwerk
Tony Stewart Sunnyskyguy EE75

9

Durch die Verwendung eines Pull-Down-Designs ist es möglich, ein Gerät (z. B. eine LED) mit einer 5-V-Versorgung unter Verwendung eines 1,8- V- Mikrocontrollers mit 5- V-Toleranz ohne externe Komponenten zu schalten .

Wenn der (Open-Drain-konfigurierte) Pin nicht nach unten gezogen wird, ist er potentialfrei, da kein Strom gezogen wird, und die Spannung schwimmt auf die Versorgungsspannung der LED, also auf 5V. Dies ist für einige, aber nicht alle Niederspannungsmikros in Ordnung.

Auf diese Weise können Sie die LEDs direkt von einer Versorgungsleitung aus betreiben und einen Spannungswandler mit niedrigerem Strom für das Mikro verwenden. Dies ist der einzige Weg, um z. blaue leds auf einem 1,8 v micro ohne zusätzliche komponenten.

Zum Beispiel sind die Pins der NXP LPC81xM-Serie 5 V tolerant, wenn das Mikro mit Strom versorgt wird, selbst bei 1,8 V

Datensatz von NXP LPC81xM

Auszug aus dem Datenblatt


0

Denn Open-Drain- Mosfets verbrauchen in der Regel mehr Strom als Push-Pull und tolerieren manchmal sogar einen größeren Spannungsbereich. Die Verwendung einer LED mit offenem Drain funktioniert nur bei einer Konfiguration mit aktivem Low-Pegel. Hängt allerdings vom Mikro ab, manche sind nur Push-Pull.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.