In diesem Beitrag möchte ich dir zeigen wie du zwei (oder auch mehr) LED Stripes kaskadierend aneinander schließen kannst.
Im Beitrag LED Stripe wechsel blinken am Arduino UNO R3 habe ich dir bereits gezeigt wie du ein LED Stripe am Arduino UNO R3 anschließt und in der Arduino IDE programmierst.
Nun soll es darum gehen wie du die LED Stripes hintereinander schaltest und somit min. einen digitalen Pin am Mikrocontroller einsparen kannst.
Bezug eines LED Stripes
Für dieses kleine Projekt verwende ich:
- zwei 8fach RGB Stripes*,
- zwei 4polige Stiftleisten*,
- eine 4polige Buchsenleiste*,
- vier Breadboardkabel*,
Des Weiteren benötigst du noch etwas Werkzeug zum Anlöten der Stift- / Buchsenleisten an die RGB Stripes:
- einen 30 Watt Lötkolben*,
- Lötzinn*, 0,5 mm,
- Lötfett*,
- eine hitzebeständige Unterlage*
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Da es mich beim Basteln immer stört, wenn die Breadboardkabel „wild umherfliegen“ nutze ich Isolierband* um diese recht sauber zusammen zuhalten.
Aufbau der Schaltung – LED Stripes kaskadierend anschließen
Das kaskadierende anschließen von RGB LED-Stripes bedeutet lediglich, dass diese hintereinander geschaltet werden.
Dafür verfügen die meisten RGB Module über jeweils einen IN & OUT Pin. An den ersten IN Pin wird der digitale Pin des Mikrocontrollers angeschlossen und an den OUT Pin der IN Pin des nächsten RGB Moduls usw.
Aber auch hier muss man darauf achten, dass die maximale Last am 5V Pin des Arduinos nicht überschritten wird.
Alternativ kann man auch eine externe Stromquelle anschließen.
Programmieren der LED Stripes in der Arduino IDE
Wie im Beitrag LED Stripe am Arduino UNO steuern bereits gezeigt, kann das RGB Modul mithilfe der Bibliothek von FastLED recht einfach programmiert werden.
Das nachfolgende Programm habe ich aus dem oben verlinkten Beitrag verwendet und lediglich den Wert für „NUM_LEDS“ auf 16 und den „DATA_PIN“ auf 6 geändert.
// Importieren der Bibliothek "FastLED" #include <FastLED.h> // Wieviele LEDs sind auf dem LED Stripe? #define NUM_LEDS 16 // digitaler Pin an welchem der LED Stripe angeschlossen ist #define DATA_PIN 6 // Ein Array mit den LEDs CRGB leds[NUM_LEDS]; void setup() { //definieren des WS2812B LED Stripe vom Typ GRB (Green, Red, Blue) //sollte ggf. ein anderer Typ verwendet werden so muss dieser hier angepasst werden. //Mögliche Typen sind im Blonk Beispiel unter https://github.com/FastLED/FastLED/blob/master/examples/Blink/Blink.ino // enthalten. FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS); } void loop() { // eine Schleife von 0 bis NUM_LEDS for(int i=0;i<=NUM_LEDS;i++){ // LED an Position "i" in ROT leds[i] = CRGB::Red; // aktivieren der gesetzen Werte FastLED.show(); // eine Pause von 75ms. delay(75); // deaktivieren der LED / es wird lediglich die Farbe schwarz gesetzt leds[i] = CRGB::Black; // aktivieren der gesetzen Werte FastLED.show(); // eine Pause von 75ms. delay(75); } }
Hier nun ein kleines Video von einem einfachen, roten Lauflicht mit 16 RGB LEDs am Arduino UNO R3 bzw. Keyestudio UNO.