Ich verwende einen 3,3-V-uC (ATMega 328p in Arduino Pro Mini), der mit 3 Alkalis (nominal 4,5 V) betrieben wird. Also Vin = 4,5 V, Vcc = 3,3 V
Ich möchte LEDs von einigen Pins ansteuern, sagen wir jeweils 20 mA. Und ich dachte daran, die LED-Anoden an Vin (4,5 V) anzuschließen, wobei die Kathode an den uC-Pin geht, anstatt alle LED-Ströme durch den 3,3-V-Onboard-Regler zu leiten. (Obwohl ich in dem Beispiel hier rote LEDs verwende, möchte ich vielleicht auch blaue verwenden, was mit etwas mehr Ansteuerspannung bequemer wäre).
Ich schätze eine rote LED bei etwa 2 V Vfwd, also müsste der Widerstand 2,5 V bei 20 mA abfallen, sagen wir 1K2 Ohm.
Das Problem: Dadurch wird ein uC-Pin über seine Vcc-Schiene (über eine LED) mit einer 1,2-V-Quelle verbunden.
Ich denke, wir sind in Ordnung, wenn die LED eingeschaltet ist (Pin niedrig). Aber was ist mit dem Ausschalten der LED?
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Ansatz 1: Ziehen Sie den uC-Pin hoch (3,3 V), um die LED auszuschalten. Die LED liegt zwischen 4,5 V und 3,3 V, und die Differenz von 1,2 V reicht nicht aus, um sie zu beleuchten - und ich denke, sie bringt den Stift auch nicht zu hoch über seine Schiene. Aber LEDs sind keine idealen Geräte, daher diese Frage.
Ansatz 2: Tristate-uC-Pin (machen Sie es zu einem Eingang), um die LED auszuschalten. Die LED liegt zwischen 4,5 V und dem hochohmigen Eingang (zusammen mit ihrer statischen Schutzdiode an Vcc). Auch hier hoffe ich, dass der Vfwd der LED ausreichend Schutz für den uC-Pin bietet.
Ist einer oder beide dieser Ansätze praktikabel und sicher für die uC?
BEARBEITEN: Ersetzen Sie den 120-Ohm-Widerstand oben, oops.
Worüber Sie sprechen, ist kein großes Risiko für ein Hobbyprojekt. Ein paar Dinge, an die Sie denken sollten.
Es ist nicht wirklich die Auf den Betriebsstrom kommt es an bei maximal akzeptabler "Aus"-Helligkeit. Diese Spannung kann für eine rote LED mit niedrigem Strom nur 1,4-1,5 V Volt betragen - in einem dunklen Raum können sie mit Mikroampere Strom gut sichtbar sein. Wenn Sie den Ausgang auf 3,3 V (Nennpegel) treiben, erhalten Sie 3,3 V am Ausgang. Eine frische alkalische Zelle mit minimaler Belastung könnte bei Raumtemperatur 1,63 V / Zelle betragen (gerade gemessen), also wären 3 4,89 V. Das lässt Sie mit 1,59 V über der LED + Widerstand (nominal, nicht zulassen, dass die 3,3 V ein paar Prozent niedrig sein könnten).
Das ist viel zu viel, um sicherzustellen, dass es nicht einen ganzen Haufen Licht ausstrahlt.
Wir stellen es also in drei Zuständen dar, wodurch der Ausgang vielleicht etwas über Vcc gehen kann, ohne dass viel Strom fließt. 300 mV sind sicher, das Datenblatt sagt 500 mV absolutes Maximum. Bei 500 mV hätten wir 1,09 V über der LED, wahrscheinlich genug, um sicherzustellen, dass sie zumindest unter Nennbedingungen ausgeschaltet ist. Der Wert des „absoluten Maximums“ ist nie gut zu entwerfen, aber normalerweise gibt es einen Vorbehalt bei diesem bestimmten Wert, der diese Spannung oder etwas mehr zulässt, wenn der Strom begrenzt ist.
Ich denke also, dass dies funktionieren wird (mit Tri-State, nicht Push-Pull), und ich denke auch, dass es für ein Hobbyprojekt akzeptabel genug ist, vorausgesetzt, niemand wird in Zukunft einen Batterie-Eliminator auf der Schaltung verwenden *. Denken Sie daran, dass der Spielraum bei den roten LEDs minimal ist, und erwägen Sie, Rot zugunsten von Gelb oder Orange zu vermeiden. Oder fügen Sie einfach eine Siliziumdiode in Reihe mit den roten LEDs hinzu (eine Diode kann für mehrere LEDs verwendet werden).
Ich habe so etwas einmal in einem kommerziellen Produkt gemacht (um eine Reihe von LEDs mit hoher Vf unter Verwendung eines 5-V-Konstantstromausgangs anzusteuern), aber ich habe ein Netzteil mit genau der richtigen seltsamen Spannung und dem geeigneten Temperaturkoeffizienten entwickelt, um den LEDs zu entsprechen und damit die Situation optimieren. Ich denke, die Versorgung war etwa 8-9V. Hat super funktioniert, problemlos von -20°C bis 80°C (Spezifikation war 0-50°C).
Es ist keine gute Idee, einen I/O-Pin Spannungen auszusetzen, die über dem Leistungspegel des Prozessors liegen.
Verwenden Sie einen Transistor:
Die richtige Lösung, die keine Parameter im Datenblatt verletzt, ist oben. Wenn Sie jedoch versuchen, damit durchzukommen, wird es höchstwahrscheinlich funktionieren, wenn Sie sicherstellen, dass der Ausgangsstift immer angesteuert wird.
Wir gehen von einem modernen Prozessor mit CMOS-Ausgang aus. Der CMOS-Transistor kann im eingeschalteten Zustand Strom in beide Richtungen leiten. Der kleine Strom, den Sie durch die LED bekommen, wenn der Ausgang hoch ist, wird durch den oberen Treibertransistor zu Vdd geleitet. Der Wert dieses Stroms bei 1,2 V Vorwärtsvorspannung ist schwer vorherzusagen, wird sich erheblich mit der Temperatur ändern und von Teil zu Teil variieren. Sie wird jedoch im Vergleich zur Gesamtstromaufnahme des Prozessors "sehr klein" sein.
Wenn Sie den Ausgang zwischen angesteuerter niedriger und hoher Impedanz anstelle von angesteuerter niedriger und hoher Impedanz umschalten, nimmt die Schutzschaltung für diesen Pin stattdessen den geringen LED-Strom auf. Bei einigen Designs ist dies nur eine Diode zu Vdd und daher nicht schlechter, als wenn der obere FET leitend ist. Andere Konstruktionen haben jedoch kompliziertere Schaltungen, die den Stromdurchgang schlechter abführen würden. Zu erraten, was die geringsten Probleme verursacht, ist eines der Probleme, auf die Sie stoßen, wenn Sie Spezifikationen ignorieren.
Es gibt zwei weitere Möglichkeiten, um vollständig in der Spezifikation zu sein:
Ihr Ansatz 2 (Tristate des D3-Pins) ist in Ordnung, außer wie andere Poster darauf hingewiesen haben, dass die ESD-Schutzdiode von D3 zu VCC in Reihe mit der LED (und dem Widerstand) liegt, wenn der Ausgang tristate ist. Dort fließt ein kleiner Strom bei (4,5 V - 3,3 V) = 1,2 V über beide Dioden von der 4,5-V-Versorgung zu VCC. Die LED-Schwelle ist viel höher als die Schwelle der ESD-Diode von etwa 0,5 V bis 0,6 V für einen nennenswerten Strom (Mikroampere oder mehr; es sind große Dioden), sodass bei 1,2 V über beide der Strom wahrscheinlich im Mikroamperebereich liegt. Die D3-Pin-Spannung steigt jedoch um etwa 0,5 V bis 0,6 V über VCC, und dies übersteigt wahrscheinlich die empfohlene Spannung am Pad (zur Belastung des Gate-Oxids der Eingangsschaltungstransistoren).
Sie verwenden den D3-Pin im Wesentlichen als Open-Drain-NMOS-Schalter. Sie könnten immer einen diskreten NMOS-Transistor außerhalb des Chips hinzufügen, der> 4,5 V standhalten kann. Während es eine Komponente hinzufügt und die Richtung des Ports umkehrt, verhindert es eine Überspannung am IC.
Beachten Sie, dass bisher keiner der Ansätze eine Stromregelung bietet, sodass die Helligkeit mit Widerstandstoleranz, Temperatur und Versorgungsschwankungen variiert. Es gibt einige einfache Schemata dafür, wenn Sie interessiert sind, aber sie fügen ein paar weitere Komponenten hinzu.
Ich schätze eine rote LED bei etwa 2 V Vfwd, also müsste der Widerstand 2,5 V bei 20 mA abfallen, sagen wir 1K2 Ohm.
Sie müssen Ihre Mathematik auf diesen für Ihren Widerstandswert überprüfen.
R = 2,5 V Abfall durch den Widerstand / 20 mA durch den Widerstand = 125 Ohm.
Wenn Sie nicht daran interessiert sind, einen Transistor hinzuzufügen, warum beziehen Sie die LED nicht vom Mikrocontroller-Pin?
KyranF
KyranF
gbulmer
Passant
Zeph
Zeph
Zeph