Forum: Mikrocontroller und Digitale Elektronik WS2811/WS2812/WS2812B Timings, was stimmt denn jetzt?


von Ralf (Gast)


Lesenswert?

Hallo,

ich studiere gerade die Datenblätter der WS2811/WS2812/WS2812B, und in 
jedem Datenblatt stehen andere Timings, zum Teil differieren die Timings 
sogar zwischen dem chinesischen und englischen Datenblatt eines der o.g. 
ICs.

Was stimmt denn jetzt? Ich hab meine Software nun so getrimmt, dass ich 
für die High-/Low-Pulse der Datenbits 1.0µs/0.25µs für ein 1-Bit habe, 
für's 0-Bit entsprechend umgekehrt, also 800kHz Bitrate mit einem 
Tastverhältnis von 1:4 bzw. 4:1.
Eigentlich bin ich davon ausgegangen, dass die WS2812(B) einfach LEDs 
mit integriertem WS2811 Controller sind. Da ich einem englischen 
Datenblatt eines chinesischen Herstellers nicht unbedingt traue habe ich 
das chinesische WS2811-Datenblatt bzgl. der Timings zu Rate gezogen und 
eben auch als Basis für meine Software verwendet.
Allerdings tauchen in jedem Datenblatt andere Werte auf. Ich frag mich 
nun, ob alle drei Typen mit meinem Timing zuverlässig funktionieren?

Ralf

von Stephan B. (matrixstorm)


Lesenswert?

Hallo.

Seh dir bitte auch einmal 
Beitrag "Re: AVR ASM ws2811 / ws2812 Ansteuerung mit FastPWM" an.

Am besten du implementiest die Timings der WS2812B - die sind 
symmetrisch und abwaertskompatibel.
Ob die Unterschiede im Datenblatt Absicht oder Fehler sind, kann ich 
nicht sagen - mit den Timings der WS2812B kannst du aber zumindest auch 
WS2812 verwenden.

Beim externen WS2811 sind die abgedruckten Timings so verschieden, das 
ich hier Absicht annehmen wuerde. Zudem ist auch die Anordnung der 
Farbkanaele im Datenstrom anders.

MfG

von Ralf (Gast)


Lesenswert?

Hi Stephan,

besten Dank. Ob ich die Timings des WS2812B hinbekommen kann muss ich 
prüfen. Hast du eine Idee, wie man am effektivsten prüfen kann, ab wann 
das Timing nicht mehr passt?
Also beispielsweise 10 WS281x(B) ansteuern und eine Farbe dauerhaft 
draufpusten?

Ralf

von Stephan B. (matrixstorm)


Lesenswert?

Ich habe dazu eine kleine GUI von mir verwendet.
Im Beitrag "Re: LED Stripes über USB ansteuern(dimmbar)" ist eine aeltere 
Version davon verfuegbar.

Schon nach wenigen Sekunden damit sieht man ob Timinig/El. Verbindungen 
ausreichen oder nicht. (Je laenger die LED-Chain ist, desto besser)

MfG

von Basti (Gast)


Lesenswert?

konnte jetzt mit 800 kHz und 1/4 bzw 2/4 alles steuern was sich WS281XX 
nannte...

von Ralf (Gast)


Lesenswert?

Hallo,

bitte entschuldigt die extrem späte Rückantwort.

@Stephan:
Danke für den Link. Ich arbeite leider nicht auf einem AVR. Ich werde 
mir wohl noch WS2811 sowie WS2812B besorgen, und sie mit meiner 
gegenwärtigen Implementierung testen.

@Basti:
Okay, ich habe wie gesagt 1/4 bzw. 4/1 implementiert. Aber ich schätze, 
ich muss es wohl am echten Objekt ausprobieren :)

Hat eigentlich jemand eine Emailadresse von WorldSemi? Dann könnte man 
die Jungs fragen, vielleicht bekommt man eine aussagekräftige Antwort... 
;)

Ralf

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.