Hallo liebe Leute,
ich bin grade am verzweifeln. Ich habe einen SK9822 LED-Stripe mit 264
LEDs an einem ESP8266 mit µpython. Dazu habe ich mir für den ESP8266
eine Python-Bibliothek (siehe Anhang)für das Hardware SPI geschrieben.
Das ansteuern, Farben und Helligkeit setzen funktioniert auch soweit.
Ich habe nur ein seltsames Problem:
Wenn ich meinen Buffer mit den 4 Start-Bytes, 1056 Daten-Bytes und 4
End-Bytes auf die SPI schreibe, dann bleiben die letzten 4 LEDs
dunkel/ändern die Farbe nicht. Im Buffer steht aber alles drin und auch
an der richtigen Stelle. Wenn ich jetzt den selben Buffer nochmal ohne
Veränderung auf die SPI schreibe, ändern sich die 4 LEDs.
Wird der Buffer zwischen den beiden SPI-Schreibvorgängen geändert und
dann wieder rausgeschrieben, so ändern sich die ersten 260 LEDs und die
4 Letzten bleiben erstmal gleich. Ändere ich den Buffer jetzt wieder
(andere Farbe), scheibe ihn auf die SPI, so ändern sich 260 LEDs und die
4 Letzten erhalten den Zustand des Buffers davor.
Ich habe die LEDs schon 2x ausgezählt, alle Eckpunkte an der
Installation passen.
Was auch sehr komisch ist:
Wenn ich die Gesamtzahl der LEDs in der Programmierung auf 265, 266, etc
erhöhe, wandert das Verhalten weg, sodass bei 268 "eingestellten" LEDs
alle richtig funktionieren.
Im Datenblatt habe ich nichts davon gelesen, dass es "puffer" oder sowas
geben muss, damit das mit dem Schieben richtig funktioniert. Hatte
schonmal jemand ein solches Verhalten?
Ich habe noch einen kurzen Streifen mit 35 LEDs, den ich zum testen
nehme, da habe ich das Problem nicht.
Kann das was mit der Länge zu tun haben und dass vllt. CI und DI noch
terminiert werden müssen oder so?
Alex