Hey Leute, ich hoffe ihr könnt mir bei meinem kleinen Problem helfen. :) Ich bin dabei einen einfachen 10€ Tisch zu einem Unikat umzubauen. Die Tischplatte soll vollständig aus einer 8x8 RGB Matrix bestehen. Als Led Treiber vermwende ich 10x den WS2803 (der 11. ist in einigen Tagen auch da). Er lässt sich verhältnismäßig leicht ansteuern, im 2-wire SPI Modus. Nun mein Problem: Die Ansteuerung funktioniert ohne große Probleme, nur fangen die LEDs wie wild, in allen möglichen Farben, an zu flackern und zu blinken, sobald ich versuche mehrere über PWM anzusteuern. Ich habe das kurz gefilmt, damit ihr euch das besser vorstellen könnt. http://youtu.be/NI3pYjG0Tnk Was das kleine Programm tun soll: 1. Alle LEDs kurz aufleuchten lassen 2. rotes Quadrat in der Mitte 3. grüner Rahmen 4. Bei allen LEDs Schrittweise die Helligkeit erhöhen Beim grünen Rahmen fängt das geflacker schon an und spätestens wenn ich alle LEDs versuche zu dimmen, geht es drunter und rüber.. Meine Vermutung: Die SPI Leitungen sind einfach zu lang. Laut Datenblatt sind 6m bei 2 Mhz möglich, wenn man einen 50 Ohm Widerstand verwendet. "The transmit the data over long distance by cascading, the WS2803 integrates push-pull output stage with strong driving capability which enables the data and clock can be transmitted up to 6 meters at 2MHz clock frequency. To prevent the reflection, it is necessary to connect a 50Ω resistor at the data input or output port for impedance match." Nur kann ich dem Datenblatt nicht wirklich entnehmen wie der Widerstand verwendet werden soll. Gegen GND? Gegen +5V? In die Leitung? Nach jedem Chip? Ich hoffe ihr könnt mir da helfen :) PS: Ich habe versucht auf dem Foto die Verkabelung zu skizzieren. Jede Zahl stellt einen WS2803 da und der gelbe Strich soll den Verlauf der Data und Clock Leitungen zeigen.
>Meine Vermutung: >Die SPI Leitungen sind einfach zu lang. Meine Vermutung Kabel zu dünn oder Abblockkondensatoren vergessen.
> Meine Vermutung Kabel zu dünn oder Abblockkondensatoren > vergessen. Es ist mir zwar peinlich, aber daran lag es größtenteils.. Also Danke dafür :) Jeder ws2803 hat einen 100nf Kondensator direkt an die VCC, GND Pins bekommen und die Spannungsversorgung hat mehrere parallel geschaltete 1500µ Kondensatoren bekommen. So läuft das alles schon ganz gut, aber ganz weg ist das geblinke noch nicht.. Einige LEDs blinken immer noch Bunt auf.. Nicht mal annähernd so schlimm wie vorher, aber 2-5 pro Sekunde sind es immer noch. Also wenn mir da jemand helfen könnte, wäre ich sehr dankbar :)
Wie hast du denn verkabelt? Bei Flachbandkabel mit jeweils mindestens einer GND Leitung zwischen den signalführenden Leitungen hatte ich noch nie Probleme. Und die waren bei Fullspeed-SPI immerhin in Summe gute 2 Meter lang und verbanden 8 Platinen mit je einem 595 drauf (die natürlich alle ihre 100nF Blockkondensatoren gekriegt haben)
> Wie hast du denn verkabelt?
Ich habe einfache Litze mit 0,14mm² Durchmesser genommen. In der Summe
ist die Daten sowohl die Takt Leitung an der längsten Stelle wohl knapp
3m lang.
Die 5V+ und GND Leitung führen von einer Verteilerplatine mit den 1500µf
Kondensatoren einzeln an jeden WS2803, sind also alle höchstens 30-40cm
lang.
:
Bearbeitet durch User
>Einige LEDs blinken immer noch Bunt auf. An welcher Stelle? >Ich habe einfache Litze mit 0,14mm² Durchmesser genommen. Ganz schön wenig Querschnitt. Wie viele LEDs hängen da dran? Vieleicht ist der Verlust auf dem Kabel schon zu groß. Bei meinem 6m LED Stripe kommen hinten, wenn ich alle LEDs voll aufdrehe, nur noch 3,6V von vorne 5,2V an. Das reicht gerade so für die hinteren blauen LEDs.
@Bjarne J. (homer3345) >Nur kann ich dem Datenblatt nicht wirklich entnehmen wie der Widerstand >verwendet werden soll. Gegen GND? Gegen +5V? In die Leitung? Nach jedem >Chip? In Reihe zum jeweiligen Ausgang SDO und CKO, das ist eine Serienterminierung, siehe Wellenwiderstand.
> An welcher Stelle? Die LEDs blinken zufällig auf, sowohl die am ersten WS2803 als auch die am letzten.. >>Ich habe einfache Litze mit 0,14mm² Durchmesser genommen. > > Ganz schön wenig Querschnitt. > Wie viele LEDs hängen da dran? Vieleicht ist der > Verlust auf dem Kabel schon zu groß. > Bei meinem 6m LED Stripe kommen hinten, wenn ich alle > LEDs voll aufdrehe, nur noch 3,6V von vorne 5,2V an. > Das reicht gerade so für die hinteren blauen LEDs. Das war tatsächlich anfangs ein Problem, aber mittlerweile hat jeder Chip (6 LEDs) sein eigenes Kabel bekommen.
So die Widerstände sind in der Leitung und plötzlich funktioniert alles, so wie es soll. 4Mhz funktionieren problemlos und auch 8Mhz kann man noch halbwegs gebrauchen. Danke Leute :))
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.