STM32 Bluepill -> SK6812 (auf Basis von WS2812B Lib)

OP #7524931
Lesenswert?

Hallo zusammen,

erstmal, damit es nicht untergeht

den Code und die Bibliothek habe ich nicht selbst g eschrieben. Das Original ist von "Roger Clark Melbourne" https://github.com/rogerclarkmelbourne/Arduino_STM32/tree/master/STM32F1

Ich hatte von ihm die Library für die WS2812B auf einer STM32 Bluepill verwendet. Für ein Beleuchtungsprojekt habe ich die SK6812 in der Variante Kaltweiß, Warmweiß, Amber verwendet. Leider haben die SK6812 Typen ein von den WS2812B abweichendes Timing, wie "1" und "0" übertragen wird. Das beschreibe ich jetzt hier nicht, steht ja im Datenblatt. Um dem bei zu kommen, habe ich die WS2812B Library von Roger angepasst. Bzw. die LUT die verwendet wird, um Byte-Werte 0 - 255 auf die SPI zu geben und einige andere Stellen.

Im wesentlichen wollte ich hier nur fix ohne bisher viel Doku meine angepassten Files SK6812.cpp und SK6812.h geben, falls zufällig jemand anderes das brauchen kann.

Worauf man achten muss: In SK6812.cpp wird die Baudrate für die SPI gesetzt. 'Ich' verwende SPI2, die im STM32F103 am langsameren Bus hängt. Daher ist in meinem File der Taktteile = 4, nutzt man die default SPI_1, muss der Teiler = 8 sein.

Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren