RGB-LED mit gemeinsamer Kathode ab 3,3 V

Ich habe eine RGB-LED (gemeinsame Kathode), die ich von den GPIO-Pins eines ESP8266 (3,3 V) auslösen möchte. Das Gerät, das ich verwende (Wemos pro mini D1), hat eine 5-V-Versorgung, die ich über einen Transistor steuern wollte (ich habe einige 2N3904).

Aus einiger Lektüre verstehe ich, dass dies wie folgt erreicht werden kann (und ich bin mit der Begründung zufrieden, warum):

Geben Sie hier die Bildbeschreibung ein

Kredit: hier

Ich wollte jedoch wissen, ob dies mit nur einem BJT erreichbar ist. Ich habe einige Leute gesehen, die vorschlagen, nur einen NPN und die Last am Emitter und keinen Widerstand an der Basis zu verwenden, aber als ich dies ausprobierte, hatte ich einen extrem niedrigen Ib, der nicht ausreichte, um den BJT vollständig zu "schalten".

Es scheint mir seltsam, dass die Mehrheit der RGB-LEDs eine gemeinsame Kathode sind, wenn die Methode zu ihrer Ansteuerung komplexer ist. Ist jemandem bewusst warum?
Ein kurzer Blick auf Digi-Key zeigt, dass sie 236 verschiedene LEDs mit gemeinsamer Kathode und 709 verschiedene LEDs mit gemeinsamer Anode haben .
Tatsächlich kann ich beim Filtern nach RGB-LEDs kein einziges gemeinsames Kathodenmodell finden - sie sind alle gemeinsame Anoden.
Das ist seltsam! Ich habe auf RS Components gesucht und habe das gegenteilige Problem ... Jetzt ziemlich verwirrt!
Ich frage mich, ob es Unterschiede zwischen SMD- und Durchgangslochteilen gibt.
Ja, das frage ich mich langsam. Wie auch immer, ich werde einige LEDs mit gemeinsamer Anode für zukünftige Projekte bestellen. Vielen Dank für den Hinweis, dass Digi-Key sie verkauft (als Neuling war mir diese Seite nicht bekannt, nochmals danke).
Die Schaltung in Ihrer Frage verwendet einen Darlington (TIP107) und dies bedeutet, dass die LED bestenfalls nur mit 4,3 Volt angesteuert wird. Wahrscheinlich eher 4 Volt und schon gar nicht 5 Volt. Sei nicht glücklich mit den Gründen, die dir gegeben wurden.
@andyaka danke für den Hinweis. Würde ein 2N3906 die Arbeit machen? Ich plane, 2x 20mA LEDs anzusteuern
Es wäre sicher besser.
Sie könnten alles mit 3,3 V machen, wenn Sie wissen, wie.

Antworten (3)

Ich wollte wissen, ob dies mit nur einem BJT erreichbar ist?

In Ihrem Fall nicht so einfach, das Problem ist, dass der Ausgang des ESP8266 entweder 0 V oder 3,3 V beträgt. Relativ zur +5-V-Schiene (wo sich der Schalttransistor befinden würde), die entweder 5 V - 0 V = 5 V oder 5 ergibt V - 3,3 V = 1,7 V über dem Eingang des Transistors.

Das Ein-/Ausschalten eines NPN mit 0 oder 3,3 V kann direkt erfolgen (gemäß Ihrer vorgeschlagenen 2-Transistor-Schaltung).

Das Ein-/Ausschalten eines PNP (da wir die +5-V-Seite schalten) mit 1,7 V oder 5 V ist weniger einfach. Es könnte beispielsweise unter Verwendung einer Zenerdiode durchgeführt werden, um etwa 1,7 V zu subtrahieren, aber es ist umständlich. Die 2-Transistor-Lösung ist genauso einfach, kostet wahrscheinlich das gleiche (nur Standardkomponenten erforderlich, kein Zener erforderlich) und ausfallsicherer.

Danke, gibt es einen Namen für diese Art von Setup (den ich in meiner Frage angegeben habe)?
Soweit ich weiß nicht wirklich. Das Ein- / Ausschalten des PNP-Schalters auf der Versorgungsseite wird als "High-Side-Schalten" bezeichnet. Wenn Sie also googeln, sehen Sie möglicherweise ähnliche Schaltungen. Das Verschieben des 3,3-V-Logiksignals auf eine höhere Spannung (hier 5 V) erfolgt mit einer Schaltung, die als "Levelshifter" bezeichnet wird. Ihre Schaltung ist im Grunde eine Kombination aus diesen beiden.

Sie können sicherlich LEDs mit geringer Leistung mit einem einzigen invertierenden Transistor ansteuern.

Beachten Sie einige Faustregeln für LED-Antriebe mit Niederspannung, da Millivoltabfälle und Impedanzverhältnisse bei Transistoren eine Rolle spielen.

  • Lesen und verstehen Sie das LED-Datenblatt gründlich, insbesondere die VI-Kurven, die auch für Transistoren wie P2N2222A gelten
  • Vce(sat) ist immer für 10 % Basisstrom ausgelegt, aber bei niedrigem Strom können Sie mit 1 % Basisstrom und 0,1 V Anstieg im P2N2222A davonkommen. Das heißt, wenn der Transistor gesättigt ist, fällt der hFE bei zwei typischen Strompegeln auf 10 ab.
  • Berücksichtigen Sie die obigen Werte in Ohmsche Gesetz- oder KVL-Berechnungen.
  • Behandeln Sie den Transistor wie einen Schalter mit der Reihe R oder Rce (der Widerstand für CE als Schalter ist in einigen Datenblättern bei Diodes Inc. angegeben), aber ich nenne ihn einfach Equivalent Series Resistance oder ESR, wobei ESR ~ 0,5 * 1 / Pd-Bewertung ( @ 85 'C auch 2: 1 mfg-Toleranz), also wenn es für 0,5 W bei 85' C ausgelegt ist, dann 1 Ohm. ESR gilt auch für alle Logikgeräte und FETs (RdsOn) sowie Kappen und Spulen (DCR). Eine 1-W-LED hat also das 10-fache des ESR als eine 10-W-LED (oder jede Diode oder jeder Transistor).

  • Die 5-V-Logik beginnt bei etwa 50 Ohm und fällt bei etwa 25 Ohm für 3,3-V-Logikchips (50 % Toleranz) für Direktantriebsszenarien ab. (alte 15-V-Logik lag bei etwa 300 Ohm)

  • Aber bevor Sie das Rad neu erfinden, gibt es ungefähr 10.000 verschiedene LED-Treiber-Designs, also lesen Sie! oft. https://www.digikey.ca/product-detail/en/issi-integrated-silicon-solution-inc/IS31FL3194-CLS2-TR/706-1598-1-ND/7564593

IS31FL3194 ist ein 3-Kanal-LED-Treiber, der über einen zweidimensionalen Auto-Atmungsmodus verfügt. Es verfügt über einen Mustermodus und einen Strompegelmodus für RGB-Beleuchtungseffekte. Der maximale Ausgangsstrom kann in 4 Stufen (max. 40mA) eingestellt werden.

Im Strompegelmodus kann der Strompegel jedes Ausgangs in 256 Schritten unabhängig programmiert und gesteuert werden, um die Farbmischung zu vereinfachen. Im Pattern-Modus können die Timing-Eigenschaften für den Ausgangsstrom – steigender Strom (T1), gehaltener Strom (T2), fallender Strom (T3) und Ausschaltzeit (TS, TP, T4) – individuell angepasst werden, sodass jeder Ausgang unabhängig einen Vorstrom aufrechterhalten kann - etabliertes Muster, das das Mischen von Farbatmung oder eine einzelne Farbatmung erreicht, ohne dass zusätzliche Schnittstellenaktivitäten erforderlich sind, wodurch wertvolle Systemressourcen gespart werden.

AUCH

Folgende Features werden von Esspruino auf dem ESP8266 nur teilweise oder gar nicht unterstützt:

No hardware I2C, however, the software I2C works OK.
PWM does not work, low speed software PWM is usable
No DAC: the esp8266 does not have a DAC.
No independently usable serial port (needs Espruino work)
GPIO16 is now supported in Espruino as a D16 without watch
  but with all software functions like PWM/I2C/SPI/etc

Haben Sie darüber nachgedacht, noch einen Schritt weiter zu gehen und die LED mit 0-Transistoren anzusteuern?

Der ESP8266 hat einen 3,3-V-Ausgang und sollte 10-20 mA pro Pin zulassen [Überprüfen Sie die Spezifikationen jedoch sorgfältig, überprüfen Sie das Limit pro Pin und das Limit für Pins zusammen]. LEDs leuchten, meistens abhängig von der Farbe, zwischen 2,8 V und 3,2 V [Überprüfen Sie erneut die Spezifikationen Ihrer LED für jede der 3 Farben]. LEDs haben auch eine Strombegrenzung, normalerweise etwa 40 mA, aber 20 mA sind ausreichend hell. Angesichts der Spannung, bei der die LED leuchtet, und des zulässigen Stroms pro Pin (oder für die LED, was auch immer kleiner ist) können Sie den erforderlichen Widerstand berechnen, um alles innerhalb der Spezifikationen zu halten.

Beispiel: Der Widerstand muss die 3,3 V auf das herunterbringen, was die LED benötigt. Für eine 3-V-LED (rot) bedeutet dies, dass Sie 0,3 V brennen müssen. Bei 20mA Strombegrenzung erhält man: R = V / I = 0,3 / 0,02 = 15 Ohm.

Aus Erfahrung ist es zwar technisch machbar, aber eine schlechte Praxis, etwas direkt von einem GPIO zu steuern. Wenn es nur ein Signal ist, dann gibt es kein Problem. Aber Sie wissen nie, wann Sie etwas kurzschließen, Ihren Controller überlasten oder ähnliches, was zu einem Hardwarefehler führt, der vermieden werden könnte. Außerdem ist es eine weit weniger interessante Lernerfahrung, wenn Sie Elektronik lernen;)