Ansteuerung WS2812B LED-Stripe

Funktion

LED-Stripe bei halber Helligkeit
LED-Stripe bei halber Helligkeit

Das Beispielprogramm "LED-Stripes" erzeugt einen animierten Farbverlauf mit beliebig vielen LEDs. Zum weiteren Experimentieren sind Funktionen zum Ansteuern einzelner LEDs ebenfalls implementiert.

 

Der Mikrocontroller wird mit 24MHz getaktet, um mittels SPI das geforderte 800kHz Signal erzeugen zu können. Der Sendevorgang selbst wird dabei vom DMA Controller übernommen, sodass die Ressourcen der CPU für andere Aufgaben frei bleiben.

 

Um den Code übersichtlicher zu halten, dient die Standard Peripheral Library (Version 3.5.0) von STM als Grundlage. Dadurch erspart man sich viel Arbeit mit den Registern und der Code bleibt einfacher.

Bauteile

Mikrocontroller
Mikrocontroller
  • WS2812B LEDs 60 LEDs/m (2m um 32,90€ oder 5m um 55,99€)
  • 5V Steckernetzteil 5A (Link)

Stromverbrauch bei 100% weiß: 60mA pro LED,

daher etwa 80 LEDs bei voller Leuchtkraft (weiß) versorgbar, andernfalls mehr

  • 220Ω Widerstand
  • 74HCT04 Inverter
  • Mikrocontroller STM32F103 (oder ähnliche mit Hardware SPI)

Schaltung

Zum Aufbau wird nur sehr wenig Hardware benötigt. Das 3,3V Ausgangssignal des Mikrocontrollers wird mit dem Inverter auf einen 5V Pegel gebracht. Der Ausgang des Inverters wird mittels 220Ω Widerstand mit dem Eingang des LED Stripes verbunden.

 

Die Schaltung kann auch ohne Inverter verwendet werden, allerdings hat dies beim Testen nicht reibungslos funktioniert. Wer es probieren möchte, muss nur die nichtinvertierte Signalausgabe im Header aktivieren.

 

Aufbau am Steckbrett
Aufbau am Steckbrett

Video

Mit dem Testprogramm und obiger Schaltung habe ich ein kurzes Video erstellt, in dem der ganze Aufbau in Aktion zu sehen ist.

 

Download

Die Ansteuerung ist für einen Stripe mit 120 LEDs vorkonfiguriert. Per Änderung von NR_OF_LEDS kann eine beliebe Länge angesteuert werden.

 

Download
LED-Stripe.zip
ZIP Archiv [5.0 MB]

LED-Stripes kaufen

Die LED-Stripes sind bei Amazon und anderen Anbietern in unzähligen Versionen erhältlich.  

Für obiges Video wurden Stripes

  • in schwarz
  • mit 60 LEDs/m
  • nicht wasserdicht (keine Kunststoffummantelung)
  • mit einem Kondensator pro LED

eingesetzt.

(Versand sollte auch nach Österreich klappen, obwohl anders angegeben)