Grundlagen von FastLED

In diesen Instructables werden wir sehen, wie wir FastLED-Programme schreiben können und wie wir die FastLed-Bibliothek verwenden. Wir werden auch sehen, wie wir codieren können, um unsere eigenen Farbmuster zu entwerfen. Diese Bibliothek unterstützt verschiedene Arten von LED-Streifen, die mit den verschiedenen LED-Controllern geliefert werden, z. B. WS2811, WS2812, Neopixel usw.

Lass uns anfangen

Schritt 1: Bevor Sie beginnen:

1. Arduino Uno

2. LED-Streifen mit einem Controller wie ws2811 oder einem anderen

3. Stromversorgung gemäß Nennwert des LED-Streifens.

Schritt 2: Bibliothek einschließen:

Laden Sie die FastLED-Bibliothek hier herunter:

//github.com/FastLED/FastLED

Fügen Sie diese Bibliothek in Ihre Arduino-Idee ein.

Schritt 3: Einrichten des LED-Streifens:

Schließen Sie den LED-Streifen an Ihre Stromversorgung an. Der Daten-Pin des LED-Streifens geht in einen beliebigen digitalen Pin, den Sie im Code ausgewählt haben. Stellen Sie sicher, dass die Masse des LED-Strops und des Arduino miteinander verbunden sein müssen.

Sie können einen Neopixel-LED-Streifen verwenden oder einen billigen LED-Streifen vom Markt kaufen. Wenn Sie dies tun müssen, entfernen Sie den ersten LED-Abschnitt des LED-Streifens mit Master-Controller. Aus der nächsten Serie von LEDs können Sie als Neopixel-Streifen verwenden. Aber im chinesischen LED-Streifen steuert ein IC drei LED in Reihe, was bedeutet, dass jedes Pixel gleich dem 3-LED-Pixel ist. Wenn Sie Daten auf das erste IC schreiben, leuchten die drei mit diesem IC verbundenen LEDs auf. Also benutze ich diese Art von billigem LED-Streifen, der 7 IC in Reihe hat und 21 LED als Bündel von 3 LEDs steuert.

Verbindungen:

Arduino: digitaler Pin 6 ---> Din-Pin des LED-Streifens

gnd ---> Gnd des LED-Streifens

Stromversorgung: Pluspol ---> + vcc des LED-Streifens

gnd ---> gnd des LED-Streifens

Schritt 4: Header-Dateien und Konstanten:

Dieses Tutorial-Guthaben geht an //github.com/FastLED/FastLED/wiki/Basic-usag ...

Bitte besuchen Sie diesen Link für weitere und detaillierte Informationen.

Also fangen wir an ...

#umfassen // Header-Datei

#define NUM_LEDS 60 // Anzahl der in Ihrem Streifen vorhandenen LEDs
#define DATA_PIN 6 // digitaler Pin Ihres Arduino

CRGB-LEDs [NUM_LEDS];


Schritt 5: Void Setup ()

Wählen Sie abhängig von Ihrem LED-Streifentyp die entsprechende Funktion zum Einrichten des Hohlraums aus

void setup () {

FastLED.addLeds < NEOPIXEL, DATA_PIN > (LEDs, NUM_LEDS);

}}

oder

void setup () {
FastLED.addLeds (LEDs, NUM_LEDS);

}}

oder

void setup () {
FastLED.addLeds (LEDs, NUM_LEDS);

}}

oder

void setup () {
FastLED.addLeds (LEDs, NUM_LEDS);

}}

oder

void setup () {
FastLED.addLeds (LEDs, NUM_LEDS);

}}

Schritt 6: LED leuchten lassen:

// In meinem Streifen entspricht ein Pixel 3 LED. Wenn ich also 1 LED wie in Code 3 beleuchtete, leuchteten die LEDs

// Das liegt daran, dass auf meinem LED-Streifen 3 LEDs in Reihe geschaltet sind und von ws28111 auf 12V gesteuert werden

// leds [led no.] ist ein Array

void loop () {

LEDs [0] = CRGB :: Green; // leuchtet 1. LED als grün geführt

FastLED.show (); // wende die Funktion auf LED-Streifen an

Verzögerung (30);

}}


Blink es ....

void loop ()
{leds [0] = CRGB :: Blue;

FastLED.show ();

Verzögerung (200);

LEDs [0] = CRGB :: Black;

FastLED.show ();

Verzögerung (200);

}}

Schritt 7: LED Chaser:

// vorwärts jagen

void loop ()

{

für (int dot = 0; dot <NUM_LEDS; dot ++)

{leds [dot] = CRGB :: Red;

FastLED.show ();

LEDs [Punkt] = CRGB :: Schwarz;

Verzögerung (300);

}}

}}

// rückwärts jagen

void loop ()
{for (int dot = NUM_LEDS; dot> = 0; dot--)

{leds [dot] = CRGB :: Red;

FastLED.show ();

LEDs [Punkt] = CRGB :: Schwarz;

Verzögerung (300);

}}

}}

// beides jagen

void loop ()
{für (int dot = (NUM_LEDS-1); dot> = 0; dot--)

{

LEDs [Punkt] = CRGB :: Grün;

FastLED.show ();

LEDs [Punkt] = CRGB :: Schwarz;

Verzögerung (300);

}}

für (int dot = 0; dot <NUM_LEDS; dot ++)

{leds [dot] = CRGB :: Red;

FastLED.show ();

LEDs [Punkt] = CRGB :: Schwarz;

Verzögerung (300);

}}

}}

Schritt 8: Serielles Leuchten:

void loop ()

{

für (int dot = (NUM_LEDS-1); dot> = 0; dot--)

{leds [dot] = CRGB :: HotPink;

FastLED.show ();

Verzögerung (300);

}}

für (int dot = 0; dot <NUM_LEDS; dot ++)

{

LEDs [Punkt] = CRGB :: Blau;

FastLED.show ();

Verzögerung (300);

}}

}}

Ähnlicher Artikel