Forum: Mikrocontroller und Digitale Elektronik WS2812B: Verhindern, dass Daten vor Power angeschlossen werden


von LED (Gast)


Angehängte Dateien:

Lesenswert?

Moin,

für eine kleine Bastelei sollen ein paar Module mit WS2812B 
zusammengesteckt werden können.
Die Netzteile sind extra, daher können doofe Nutzer daten vor Power 
anschließen. Das ist sicher nicht toll für die ICs, deshalb hab ich mir 
gedacht, ich sperre die Datenleitung, bis die Versorgungsspannung die 
Sperre löst.

Kann das so hinhauen und/oder Schwachsinn?

Danke und merce

von BigBanana (Gast)


Lesenswert?

Den 2812 ist das sowas von egal wenn daten ohne strom kommen.
Deine schaltung is unnütz.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

BigBanana schrieb:
> Den 2812 ist das sowas von egal wenn daten ohne strom kommen.
Im Datenblatt steht allerdings "Input voltage VI -0.5~VDD+0.5 V". Da 
könnte man jetzt sagen: "Wenn nichts angelegt wird, dann ist Vdd=0V!"

Das stimmt allerding snicht, denn "nichts angelegt" ist "offen" und 
damit etwas grundlegend anderes als "0V".

Denn jetzt kommt der Witz: wenn an Vdd nichts weiter angeschlossen ist, 
dann wird Vdd mit hoher Wahrscheinlichkeit (interne Schutzdioden) 
einfach ansteigen, wenn man an Di eine Spannung anlegt. Und voila, schon 
ist die Forderung nach "max. Vi+0.5V" erfüllt.

Wie auch immmer: man kann das im Zweifelsfall (wenn man irgendwelchen 
internen Schutzdioden nicht traut und einen der Cent nicht reut) einfach 
durch eine externe Diode von Di nach Vdd erledigen:
1
            Vdd
2
             |
3
      .->|---o
4
      |      |
5
      |      Vdd
6
D ----o--- Di    WS2812

Dann ist die Spannung an Di sicher nie übermäßig größer als an Vdd, auch 
wenn Vdd nicht versorgt ist...

: Bearbeitet durch Moderator
von HildeK (Gast)


Lesenswert?

Lothar M. schrieb:
> Wie auch immmer: man kann das im Zweifelsfall (wenn man irgendwelchen
> internen Schutzdioden nicht traut und einen der Cent nicht reut) einfach
> durch eine externe Diode von Di nach Vdd erledigen:

Naja, wenn die Quelle an D kurzschlussfest ist, kann man es so machen.
Warum soll an VDD nichts angeschlossen sein? Zumindest die WS2812 hängen 
dran. Gut, wenn die alle ausgeschaltet sind, wird das reichen, aber wenn 
unter Power gesteckt wird, kann ja auch schon ein Datensignal aktiv sein 
und die LEDs einschalten.

Alternativ könnten die Steckverbinder auch so ausgelegt sein, dass alle 
drei Pins nur gemeinsam gesteckt werden und der Datenpin zurückgesetzt 
ist - bzw. voreilende Kontakte an VCC und GND hat.

von Jochen (Gast)


Lesenswert?

BigBanana schrieb:
> Den 2812 ist das sowas von egal wenn daten ohne strom kommen.

Und darum stirbt auch die erste LED in der Reihe wenn das gemacht wird.
Sind schon wieder Ferien oder warum häuft sich die Anzahl der Idioten 
die hier absichtlich Unsinn schreiben?

Der übliche Rat ist, einen Widerstand (etwa 330 Ohm) in Reihe mit Din zu 
schalten der den Strom durch den Datenpin auf ein erträgliches Maß 
begrenzt.
Den hast Du, die Transistoren kannst Du dann sparen.

von Stefan F. (Gast)


Lesenswert?

LED schrieb im Beitrag #7113499:
> Kann das so hinhauen und/oder Schwachsinn?

Die Schaltung wird so nicht funktionieren. Zeichne mal die Body Diode in 
Q1 ein, dann siehst du schon den gröbsten Fehler.

Für deine Zwecke gibt es ein kleines Logik IC das nur 4 Pins hat und 
wenige Cent kostet. Schau dazu in

http://stefanfrings.de/mikrocontroller_buch/Einstieg%20in%20die%20Elektronik%20mit%20Mikrocontrollern%20-%20Band%202.pdf
Kapitel 9.4

Da habe ich auch Empfehlungen dieses Forums zu den Widerständen und 
Stromversorgung zusammen getragen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

HildeK schrieb:
> Naja, wenn die Quelle an D kurzschlussfest ist, kann man es so machen.
Naja, sie muss bestenfalls den Strom liefern können, der an Vdd benötigt 
wird (parasitäre Versorgung). Aber wenn man da weiter gedacht und gleich 
einen Terminierungswiderstand an den Treiber der Datenleitung gesetzt 
hat, dem treibt dieser Umstand keine Schweißperle auf die Stirn.

> Warum soll an VDD nichts angeschlossen sein? Zumindest die WS2812 hängen
> dran.
Ja, weiß man nicht sicher. Wenn pro geheimem Modul nur 1 WS2812 drauf 
ist, dann muss nur der versorgt werden.

Stefan ⛄ F. schrieb:
> Zeichne mal die Body Diode in Q1 ein
Die ist schon eingezeichnet in Form eines kleinen Pfeiles, wie das bei 
Dioden so üblich ist (und z.B. auch beim bipolaren Transistor, der ja 
aus 2 Dioden besteht)...  ;-)

von Stefan F. (Gast)


Lesenswert?

Lothar M. schrieb:
> Die ist schon eingezeichnet in Form eines kleinen Pfeiles

Ich meinte wie bei T1, dann sieht man nämlich sofort, dass der 
Transistor den HIGH Pegel direkt durch reicht, was der TO mit seiner 
Schaltung eigentlich verhindern wollte.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Stefan ⛄ F. schrieb:
> Ich meinte wie bei T1
Stimmt, beim T1 ist die Bodydiode quasi 2x eingezeichnet: einmal 
explizit aussen dran und 1x wie bei bipolaren Transistoren üblich im 
Symbol.
Beim Q1 ist nur die implizite Version der Diode zu sehen.

: Bearbeitet durch Moderator
von Stefan F. (Gast)


Lesenswert?

Lothar M. schrieb:
> Stimmt, beim T1 ist die Bodydiode quasi 2x eingezeichnet

Ich denke nicht, dass der Pfeil in Q2 die Body Diode darstellt, sondern 
der Unterscheidung P-MOSFET versus N-MOSFET dient.

Die Body Diode wirkt nach außen wie eine parasitäre Diode zwischen 
Source und Drain, und wird deswegen auch genau so eingezeichnet. Wie 
jede Diode leitet auch sie ab einer gewissen Spannung auch rückwärts. 
Wenn diese Spannung einigermaßen spezifiziert ist (also so dass man den 
Effekt gezielt ausnutzen kann), wird das Symbol der Zenerdiode anstatt 
einer normalen Diode verwendet.

Das ist zumindest der Reim, den ich mir darauf nach Vergleich 
zahlreicher Datenblätter gemacht habe.

von HildeK (Gast)


Lesenswert?

Lothar M. schrieb:
>> Warum soll an VDD nichts angeschlossen sein? Zumindest die WS2812 hängen
>> dran.
> Ja, weiß man nicht sicher. Wenn pro geheimem Modul nur 1 WS2812 drauf
> ist, dann muss nur der versorgt werden.

Nötig ist das ganz ja nur, weil ggf. heiß gesteckt werden soll. Wie ich 
erwähnte, könnten dann alle LEDs, auch bei nur einer WS2812, auf 
maximale Helligkeit gestellt werden. Heiß gesteckt impliziert auch, dass 
ggf. die Daten dies beinhalten. Das sind dann 60mA und wäre zu viel für 
einen typischen Prozessorausgang.
Ein ausreichend großer Serienwiderstand an D tut es natürlich auch. Ich 
hatte daran gedacht, es aber leider nicht geschrieben 🙄.

von Stefan F. (Gast)


Lesenswert?

HildeK schrieb:
> Nötig ist das ganz ja nur, weil ggf. heiß gesteckt werden soll.

Oder wenn Mikrocontroller und LED Streifen separate Stromversorgung 
haben die man einzeln einschaltet bzw. wo im Fehlerfall mal nur eins der 
beiden Netzteile abschaltet.

HildeK schrieb:
> Heiß gesteckt impliziert auch, dass
> ggf. die Daten dies beinhalten. Das sind dann 60mA und wäre zu viel für
> einen typischen Prozessorausgang.

Er hat wohl kaum vor, seinen LED Streifen durch einen Prozessorausgang 
zu versorgen. Hoffe ich jedenfalls.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

HildeK schrieb:
> Das sind dann 60mA und wäre zu viel für einen typischen Prozessorausgang.
Richtig, der liefert diesen Strom schlicht gar nicht, oder nur bei 
signifikant reduzierter Spannung am Pin. Aber in den allermeisten Fällen 
geht der Pintreiber (oder gar der ganze µC) nicht mal kaputt, wenn man 
ihn hart gegen GND verbindet und "High" ausgibt.

von HildeK (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Er hat wohl kaum vor, seinen LED Streifen durch einen Prozessorausgang
> zu versorgen. Hoffe ich jedenfalls.

Natürlich nicht. Aber für den Fall, dass Power noch fehlt und GND und 
Daten schon verbunden sind, passiert das halt über die ESD-Diode oder 
eine externe.

Lothar M. schrieb:
> Aber in den allermeisten Fällen
> geht der Pintreiber (oder gar der ganze µC) nicht mal kaputt, wenn man
> ihn hart gegen GND verbindet und "High" ausgibt.

Davor will er ja die Anordnung schützen. Meist geht nichts kaputt, aber 
deshalb ist es noch lange nicht gut, darauf zu setzen. Welcher Baustein 
die Daten liefert und ob er das aushält weiß man nicht.
Genau für den Fall fragt er nach Maßnahmen.

LED schrieb im Beitrag #7113499:
> Kann das so hinhauen und/oder Schwachsinn?

Nein, funktioniert nicht, denn an Q1 sind Drain und Source vertauscht.
Ansonsten prinzipiell ja (ich habe aber die Datenblätter der MOSFETs 
nicht geprüft); den R5 kannst du einsparen. Stattdessen würde ich z.B. 
1k vom Q1-Ausgang nach GND legen.

Ich würde einen SN74LVC1G125 nehmen und dessen Versorgung an die VCC der 
LEDs hängen. Der verträgt auch ohne Versorgung 5V am Eingang.

von Stefan A. (king-crash)


Lesenswert?

Wenn die Leitung nicht zu lang und die Schaltfrequenz nicht zu hoch ist, 
wäre ein 10k Widerstand am Eingang wohl das Einfachste. Schlimmstenfalls 
können dann 500µA fließen, was der Eingang bestimmt aushält. Ist auch 
einfach auszuprobieren.

von Wolfgang (Gast)


Lesenswert?

Lothar M. schrieb:
> Das stimmt allerding snicht, denn "nichts angelegt" ist "offen" und
> damit etwas grundlegend anderes als "0V".
>
> Denn jetzt kommt der Witz: wenn an Vdd nichts weiter angeschlossen ist,
> dann wird Vdd mit hoher Wahrscheinlichkeit (interne Schutzdioden)
> einfach ansteigen, wenn man an Di eine Spannung anlegt. Und voila, schon
> ist die Forderung nach "max. Vi+0.5V" erfüllt.

Das kommt drauf an, wer sich aus VDD bedient.

Spätestens wenn da mehr eine WS1812 dran hängt, gewinnt der Stärke. 
Entweder der Datenausgang und/oder die Schutzdiode könnten überfordert 
werden oder zumindest weit außerhalb der Spezifikation betrieben werden. 
Ein Widerstand in der Datenleitung hilft dagegen, evtl. noch ein 
Treiber, der mit der VDD der LEDs betrieben wird.

von Wolfgang (Gast)


Lesenswert?

Stefan A. schrieb:
> Wenn die Leitung nicht zu lang und die Schaltfrequenz nicht zu hoch ist,
> wäre ein 10k Widerstand am Eingang wohl das Einfachste.

Die Schaltfrequenz ist durch die Zeitvorgaben für das Datentelegramm im 
Bereich einiger Megaherz (Bandbreite wg. Pulsform) vorgegeben. Da gibt 
es nicht viel drüber zu diskutieren.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Stefan A. schrieb:
> wäre ein 10k Widerstand am Eingang
Serienterminierungswiderstände sind um die 3 Zehnerpotenzen 
niederohmiger und gehören dicht an den Treiber.

von Stefan F. (Gast)


Lesenswert?

Lothar M. schrieb:
> Serienterminierungswiderstände sind um die 3 Zehnerpotenzen
> niederohmiger und gehören dicht an den Treiber.

In dem Fall geht es aber nicht um Serienterminierung, sondern darum, 
einen Eingang vor Überspannung/Strom zu beschützen.

10k erscheint mir angesichts der Frequenz allerdings arg groß. Daran 
fällt grob geschätzt ein Drittel der Spannung ab. Schon mit 1kΩ sehen 
die Flanken der Signale grenzwertig aus.

von Teo D. (teoderix)


Lesenswert?

Stefan ⛄ F. schrieb:
> 10k erscheint mir angesichts der Frequenz allerdings arg groß.

Hab das mal ausprobiert, so ab 1k is Schluss mit lustig.
Muss V1/V2 gewesen sein.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Stefan ⛄ F. schrieb:
> In dem Fall geht es aber nicht um Serienterminierung, sondern darum,
> einen Eingang vor Überspannung/Strom zu beschützen.
Mag sein, aber die Serienterminierung ist für die dauerhafte Funktion 
wichtig und hat deshalb Vorrang.

Der Schutz des Treibers und des Eingangs kann anderweitig erreicht 
werden.

Man kann natürlich auch einfach den Widerstand 150 Ohm groß machen, dann 
geht das noch als "Terminierung mit geringer Fehlanpassung" durch und es 
fließen schon rechnerisch niemals mehr als 30 mA. Das hält der Treiber 
sicher aus und wenn ich den Strom  der ESD-Diode nicht zutraue, dann 
kommt die oben skizzierte Diode extern dazu.

von Stefan F. (Gast)


Lesenswert?

Lothar M. schrieb:
> Mag sein, aber die Serienterminierung ist für die dauerhafte Funktion
> wichtig und hat deshalb Vorrang.

Ja

von Hmmm... (Gast)


Lesenswert?

Ein test hat ergeben dass 30 minuten 5V auf der datenleitung und offene 
Vcc leitung dem WS2812 nichts ausmachen. Der läuft nachher wieder.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Und die eigentliche Frage: fließt dabei Strom in den Din? Wieviel?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.