Cuprins:

Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C - Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: 5 pași
Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C - Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: 5 pași

Video: Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C - Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: 5 pași

Video: Neopixel Ws2812 Rainbow LED Glow Cu M5stick-C - Rularea Rainbow pe Neopixel Ws2812 Utilizarea M5stack M5stick C Utilizarea Arduino IDE: 5 pași
Video: Introduction to NeoPixels WS2812B LED Strip 2024, Septembrie
Anonim
Image
Image

Bună, băieți, în acest instructable vom învăța cum să folosim LED-uri neopixel ws2812 sau benzi led sau matrice led sau inel led cu placa de dezvoltare m5stack m5stick-C cu Arduino IDE și vom face un model curcubeu cu el.

Pasul 1: Lucruri de care aveți nevoie

Lucruri de care ai nevoie
Lucruri de care ai nevoie
Lucruri de care ai nevoie
Lucruri de care ai nevoie
Lucruri de care ai nevoie
Lucruri de care ai nevoie

Pentru acest instructabil avem nevoie de următoarele lucruri: placă de dezvoltare m5stack m5stick-C Cablu USB tip C Ws2812 bandă led neopixel / matrice led / inel led / câteva leduri

Pasul 2: Instalați plăcile ESP32 Un ID-ul dvs. Arduino

Instalați plăcile ESP32 pentru ID-ul dvs. Arduino
Instalați plăcile ESP32 pentru ID-ul dvs. Arduino

Asigurați-vă că ați instalat plăcile ESP32 în IDE-ul dvs. Arduino și, dacă nu este cazul, asigurați-vă că urmați următoarele instrucțiuni pentru a face acest lucru: INSTALAREA PLACILOR ESP32:

Pasul 3: Circuit

Circuit
Circuit
Circuit
Circuit
Circuit
Circuit

Partea actuală este foarte simplă: pinul din Neopixel va merge la pinul G26 pe m5stick-C. Și Vcc / Vin al neopixelului va avea nevoie de 5v, deci obțineți 5v de la o sursă de alimentare Și pinul Gnd al neopixelului va merge la Gnd din acel Putere de 5V Și pinul Gnd al neopixelului va fi, de asemenea, conectat la pinul gnd al m5stick-C pentru a oferi un teren comun. Cealaltă modalitate există și pentru circuit (spuneți dacă bateria dvs. m5stick-C este descărcată): În acest scenariu, vă puteți conecta Sursă de alimentare 5v 5v / Vcc pin la pin Vcc / Vin de neopixel și 5v pin de m5stick-C, precum și pinul de bază al acelei surse de alimentare va fi conectat la gnd de neopixel, precum și gnd de la placa m5stick-C. Și pin DIN de neopixel va merge la G26 al plăcii de dezvoltare m5stick-C. Vă rugăm să consultați imaginile conexiunii prin cablu pentru referință dacă vă confruntați cu problema. Și pentru alimentarea 5V DC la circuit folosesc pinul Arduino și pinul Gnd, deoarece arduino primește energie de la cablul USB care este conectat la o bancă de alimentare. Notă: dacă utilizați arduino și îl alimentați cu mai mult de 5V nu folosiți pinul Vin, utilizați pinul Vin doar dacă arduino obține energie de la o sursă de 5v, altfel folosiți pinul Vcc în loc de pinul Vin.

Pasul 4: Încărcarea codului

Se încarcă codul
Se încarcă codul
Se încarcă codul
Se încarcă codul

Înainte de a încărca codul, asigurați-vă că ați instalat biblioteca FastLED în ID-ul dvs. Arduino, dacă nu, vă rugăm să faceți acest lucru mai întâi. Vă rugăm să copiați următorul cod și să îl încărcați pe placa de dezvoltare m5stick-c folosind Arduino IDE.: Înainte de a încărca codul, asigurați-vă că ați introdus numărul de LED-uri pe care neopixelul le are în cod, deoarece am introdus 64 de LED-uri, deoarece am 64 de leduri în matricea mea de neopixeli. / * Vă rugăm să instalați mai întâi biblioteca FastLED. În biblioteca arduino gestionați căutarea FastLED * / # includeți „M5Stack.h” #includeți „FastLED.h” #define Neopixel_PIN 26 // introduceți nr. de LED-uri neopixelul dvs. are # define NUM_LEDS 64CRGB leds [NUM_LEDS]; uint8_t gHue = 0; static TaskHandle_t FastLEDshowTaskHandle = 0; static TaskHandle_t userTaskHandle = 0; void setup () {Serial.begin (115200); M5.inceput (); M5. Lcd.clear (NEGRU); M5. Lcd.setTextColor (GALBEN); M5. Lcd.setTextSize (2); M5. Lcd.setCursor (40, 0); M5. Lcd.println ("Exemplu Neopixel"); M5. Lcd.setTextColor (ALB); M5. Lcd.setCursor (0, 25); M5. Lcd.println („Afișează efectul curcubeu”); // Initializare Neopixel FastLED.addLeds (led-uri, NUM_LEDS).setCorrection (TypicalLEDStrip); FastLED.setBrightness (10); xTaskCreatePinnedToCore (FastLEDshowTask, "FastLEDshowTask", 2048, NULL, 2, NULL, 1);} void loop () {} void FastLEDshowESP32 () {if (userTaskHandle == 0) {userTaskHandle = xTaskGetCurrentTaskHandle () xTaskNotifyGive (FastLEDshowTaskHandle); const TickType_t xMaxBlockTime = pdMS_TO_TICKS (200); ulTaskNotifyTake (pdTRUE, xMaxBlockTime); userTaskHandle = 0; }} void FastLEDshowTask (void * pvParameters) {for (;;) {fill_rainbow (leds, NUM_LEDS, gHue, 7); // efect curcubeu FastLED.show (); // trebuie executat pentru ca neopixelul să devină eficient EVERY_N_MILLISECONDS (20) {gHue ++; }}}

Pasul 5: Curcubeu pe LED-ul Neopixel

Image
Image
Curcubeu pe LED-ul Neopixel
Curcubeu pe LED-ul Neopixel

Deci, după încărcarea codului, puteți vedea că modelul curcubeu se afișează pe matricea mea de LED-uri neopixel și va apărea de dragul dvs. pentru benzi / matrice / inel cu led neopixel. Vă rugăm să consultați videoclipul pentru a vedea cum funcționează în mișcare.

Recomandat: