Arduino Nano ESP32 - NeoPixel-LED-Streifen

Der NeoPixel-Streifen ist wie eine Reihe bunter RGB-LEDs, und du kannst jede LED separat in Farbe und Helligkeit steuern. In diesem Leitfaden erfahren wir, wie man einen Arduino Nano ESP32 verwendet, um den NeoPixel-RGB-LED-Streifen zu steuern. Um alle LEDs auf dem NeoPixel-Streifen zu steuern, benötigst du nur einen einzigen Pin am Arduino Nano ESP32.

Erforderliche Hardware

1×Arduino Nano ESP32
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×(Optional) DC-Stromanschluss
1×Verbindungskabel
1×Breadboard
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Breakout-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Stromverteiler für Arduino Nano ESP32

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

Pinbelegung

Der NeoPixel RGB-LED-Streifen hat drei Pins:

  • GND-Pin: muss mit GND (0V) verbunden werden
  • VCC-Pin: muss mit 5V der externen Stromversorgung verbunden werden
  • Din-Pin: ist der Pin, der das Steuersignal empfängt. Er sollte mit einem Pin des Arduino Nano ESP32 verbunden werden.
NeoPixel Pinbelegung

Verdrahtungsdiagramm

Arduino Nano ESP32 NeoPixel RGB-LED-Streifen Verdrahtungsdiagramm

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

Wie man NeoPixel RGB-LED-Streifen programmiert

  • Deklariere ein NeoPixel-Objekt
#define PIN_NEO_PIXEL D2 // Der Arduino Nano ESP32-Pin, der mit NeoPixel verbunden ist #define NUM_PIXELS 30 // Die Anzahl der LEDs (Pixel) auf dem NeoPixel Adafruit_NeoPixel NeoPixel(NUM_PIXELS, PIN_NEO_PIXEL, NEO_GRB + NEO_KHZ800);
  • Initialisiert den NeoPixel
NeoPixel.begin(); // INITIALISIEREN NeoPixel-Streifenobjekt (ERFORDERLICH)
  • Setze die Farbe jeder einzelnen LED fest (als Pixel bezeichnet).
NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0));
  • Stelle die Helligkeit aller Streifen ein.
NeoPixel.setBrightness(200); // ein Wert von 0 bis 255

※ Notiz:

  • NeoPixel.setBrightness() wird für alle Pixel des LED-Streifens verwendet. Um die Helligkeit für jedes einzelne Pixel einzustellen, können wir den Farbwert skalieren.
  • Die durch NeoPixel.setBrightness() und NeoPixel.setPixelColor() festgelegten Werte treten erst in Kraft, wenn NeoPixel.show() aufgerufen wird.

Arduino Nano ESP32-Code

Der folgende Code erfüllt die folgenden Aufgaben:

  • Es setzt nacheinander alle Pixel auf Grün, mit einer Pause zwischen jedem Pixel.
  • Es schaltet alle Pixel zwei Sekunden lang aus.
  • Es setzt gleichzeitig alle Pixel auf Rot und hält diesen Zustand eine Sekunde lang.
  • Dieser gesamte Prozess wird dann unendlich oft wiederholt.
/* * Dieser Arduino Nano ESP32 Code wurde von newbiely.de entwickelt * Dieser Arduino Nano ESP32 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/arduino-nano-esp32/arduino-nano-esp32-neopixel-led-strip */ #include <Adafruit_NeoPixel.h> #define PIN_NEO_PIXEL D2 // The Arduino Nano ESP32 pin connected to NeoPixel #define NUM_PIXELS 30 // The number of LEDs (pixels) on NeoPixel LED strip 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(); // update to the NeoPixel Led Strip delay(500); // 500ms pause between each pixel } // turn off all pixels for two seconds NeoPixel.clear(); NeoPixel.show(); // update to the NeoPixel Led Strip delay(2000); // 2 seconds 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(); // update to the NeoPixel Led Strip delay(1000); // 1 second on time // turn off all pixels for one seconds NeoPixel.clear(); NeoPixel.show(); // update to the NeoPixel Led Strip delay(1000); // 1 second off time }

Schnelle Schritte

Um mit dem Arduino Nano ESP32 zu beginnen, folgen Sie diesen Schritten:

  • Wenn Sie neu bei Arduino Nano ESP32 sind, lesen Sie das Tutorial dazu, wie man die Umgebung für Arduino Nano ESP32 in der Arduino IDE einrichtet.
  • Verdrahten Sie die Komponenten gemäß dem bereitgestellten Diagramm.
  • Schließen Sie das Arduino Nano ESP32-Board mit einem USB-Kabel an Ihren Computer an.
  • Starten Sie die Arduino IDE auf Ihrem Computer.
  • Wählen Sie das Arduino Nano ESP32-Board und seinen entsprechenden COM-Port aus.
  • Öffnen Sie den Bibliotheksverwalter, indem Sie auf das Library Manager-Symbol in der linken Navigationsleiste der Arduino IDE klicken.
  • Suchen Sie “Adafruit NeoPixel”, und finden Sie dann die NeoPixel-Bibliothek von Adafruit.
  • Klicken Sie auf die Install-Schaltfläche, um die NeoPixel-Bibliothek zu installieren.
Arduino Nano ESP32 NeoPixel-Bibliothek
  • Kopiere den obigen Code und öffne ihn mit der Arduino IDE
  • Klicke in der Arduino IDE auf die Hochladen-Schaltfläche, um den Code auf den Arduino Nano ESP32 hochzuladen
  • Schau dir die Wirkung des LED-Streifens an

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!