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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.