ESP8266 - NeoPixel-LED-Streifen

Der NeoPixel RGB-LED-Streifen besteht aus LEDs, deren Farbe und Helligkeit individuell angepasst werden können. Dieses Tutorial zeigt Ihnen, wie Sie den ESP8266 verwenden, um den NeoPixel RGB-LED-Streifen zu steuern. Im Detail werden wir lernen:

Wir müssen nur einen digitalen Pin des ESP8266 verwenden, um alle LEDs des Streifens zu steuern.

Erforderliche Hardware

1×ESP8266 NodeMCU
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×NeoPixel RGB LED-Streifen
1×1000uF Capacitor
1×470Ω Resistor
1×5V Netzteil
1×DC-Stromanschluss
1×Verbindungskabel
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP8266
1×(Empfohlen) Stromverteiler für ESP8266 Typ-C

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über NeoPixel RGB-LED-Streifen

Die Pinbelegung des NeoPixel-LED-Streifens

Der NeoPixel RGB-LED-Streifen hat drei Anschlüsse, die spezifische Verbindungen erfordern:

  • GND-Pin muss mit GND (0 V) verbunden werden
  • Der VCC-Pin sollte mit der 5-V-Versorgung einer externen Stromquelle verbunden werden
  • Der DIN-Pin ist der Pin, der das Steuersignal empfängt, und sollte mit einem ESP8266-Pin verbunden werden
NeoPixel-Pinbelegung

※ Notiz:

Die Reihenfolge der Pins kann je nach Hersteller variieren. Es ist zwingend erforderlich, die auf dem LED-Streifen aufgedruckten Markierungen zu verwenden.

Verdrahtungsdiagramm

ESP8266 NodeMCU NeoPixel RGB-LED-Streifen-Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Weitere Informationen finden Sie unter ESP8266-Pinbelegung und wie man ESP8266 und andere Komponenten mit Strom versorgt.

Wie man NeoPixel RGB-LED-Streifen programmiert

  • Erstelle ein NeoPixel-Objekt
#define PIN_NEO_PIXEL D1 // Der ESP8266-Pin, der mit NeoPixel verbunden ist #define NUM_PIXELS 30 // Die Anzahl der LEDs (Pixel) am NeoPixel Adafruit_NeoPixel NeoPixel(NUM_PIXELS, PIN_NEO_PIXEL, NEO_GRB + NEO_KHZ800);
  • Streifen mit 30 LEDs
  • Initialisiert den NeoPixel-Streifen, der 30 LEDs enthält.
NeoPixel.begin(); // INITIALISIERE NeoPixel-Streifenobjekt (BENÖTIGT)
  • Geben Sie die Farbe jeder LED an (die als Pixel bekannt ist).
NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0));
  • Stelle die Helligkeit aller LED-Streifen ein.
NeoPixel.setBrightness(100); // ein Wert von 0 bis 255

※ Notiz:

  • NeoPixel.setBrightness() wird verwendet, um die Helligkeit aller Pixel auf dem LED-Streifen anzupassen. Um die Helligkeit für jedes einzelne Pixel festzulegen, können wir die Farbwerte (R,G,B) mit dem gleichen Verhältnis skalieren.
  • Die Werte, die durch NeoPixel.setBrightness() und NeoPixel.setPixelColor() festgelegt werden, werden nur angewendet, wenn NeoPixel.show() ausgeführt wird.

ESP8266-Code

Der untenstehende Code führt die folgenden Sequenzen aus:

  • Schalte Pixel nacheinander grün, mit einer Verzögerung zwischen jedem Pixel.
  • Schalte alle Pixel zwei Sekunden lang aus.
  • Leuchte alle Pixel gleichzeitig zwei Sekunden lang rot auf.
  • Wiederhole diesen Prozess unendlich oft.
/* * Dieser ESP8266 NodeMCU Code wurde von newbiely.de entwickelt * Dieser ESP8266 NodeMCU Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp8266/esp8266-neopixel-led-strip */ #include <Adafruit_NeoPixel.h> #define PIN_NEO_PIXEL D1 // The ESP8266 pin that connects to NeoPixel #define NUM_PIXELS 30 // The number of LEDs (pixels) on NeoPixel Adafruit_NeoPixel NeoPixel(NUM_PIXELS, PIN_NEO_PIXEL, NEO_GRB + NEO_KHZ800); void setup() { NeoPixel.begin(); // INITIALIZE NeoPixel strip object (REQUIRED) } void loop() { NeoPixel.clear(); // set all pixel colors to 'off'. It only takes effect if pixels.show() is called // turn pixels to green one by one with delay between each pixel for (int pixel = 0; pixel < NUM_PIXELS; pixel++) { // for each pixel NeoPixel.setPixelColor(pixel, NeoPixel.Color(0, 255, 0)); // it only takes effect if pixels.show() is called NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(DELAY_INTERVAL); // pause between each pixel } // turn off all pixels for two seconds NeoPixel.clear(); NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // off time // turn on all pixels to red at the same time for two seconds for (int pixel = 0; pixel < NUM_PIXELS; pixel++) { // for each pixel NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0)); // it only takes effect if pixels.show() is called } NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // on time // turn off all pixels for one seconds NeoPixel.clear(); NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // off time }

Schnelle Schritte

Um mit ESP8266 in der Arduino-IDE zu beginnen, befolgen Sie diese Schritte:

  • Schauen Sie sich das Tutorial zur Einrichtung der ESP8266-Umgebung in der Arduino IDE an, falls Sie ESP8266 zum ersten Mal verwenden.
  • Verdrahten Sie die Komponenten gemäß dem Diagramm.
  • Schließen Sie das ESP8266-Board über ein USB-Kabel an Ihren Computer an.
  • Öffnen Sie die Arduino IDE auf Ihrem Computer.
  • Wählen Sie das richtige ESP8266-Board aus, z. B. (NodeMCU 1.0 (ESP-12E Module)), und den entsprechenden COM-Port.
  • Klicken Sie auf das Libraries-Symbol in der linken Leiste der Arduino IDE.
  • Suchen Sie nach “Adafruit NeoPixel” und finden Sie die NeoPixel-Bibliothek von Adafruit.
  • Drücken Sie anschließend die Schaltfläche Install, um die NeoPixel-Bibliothek zu installieren.
ESP8266 NodeMCU NeoPixel-Bibliothek
  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE.
  • Klicken Sie auf die Hochladen-Schaltfläche, um den Code an den ESP8266 zu senden.
  • Schauen Sie sich den LED-Effekt an.

※ Notiz:

Für jeden komplexen LED-Effekt bieten wir den bezahlten Programmierdienst.

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!