Eteyeli ya ESP32 12/55 - Projɛ́ ya 4 ya WS2812 RGB Srip na SunFounder ya ESP32 IoT Learning kit
Na boyekoli oyo, tokotalela ndenge ya kokamba nzete ya mbala ya WS2812 na esaleli ya microcontrôleur ya ESP32. Projɛ oyo epesaka yo nzela ya kosala ba couleurs ebele mpe kokamba LED moko na moko, mpe epesaka yo esengo mpe lolenge ya kitoko ya koyekola programmation mpe électronique. Na suka ya boyekoli oyo, okozala na esaleli oyo esalaka malamu mpe ekoki kobongola ba couleurs mpe ba motifs na ndenge ya dynamique.
Na kosalela microcontrôleur ya ESP32 ya SunFounder, oyo ezali na capacité ya Wi-Fi mpe Bluetooth oyo esalemi na kati, tokoki kosangisa mpe kokamba nzete ya mbala ya WS2812 RGB na mpasi te. Bofungwani ya nzete ya mbala oyo epesaka nzela ya misala ya bokelami, ezala mpo na bobongisi ya ndako to mpo na ba projets ya kelasi. Mpo na kososola malamu ba étapes oyo esengeli, okoki kotala vidéo na (na vidéo na 00:00).
Esaleli ya Matériel
Ba composants ya minene mpo na projɛ oyo ezali microcontrôleur ya ESP32 mpe nzete ya mbala ya WS2812. ESP32 ezali microcontrôleur ya makasi oyo ekoki kosala misala ndenge moko na ya Arduino, kasi ezali na ba options ya connexion oyo ebakisami. Ezali na ba caractéristiques ebele oyo epesaka yango nzela ya kokɔta na cloud, mpo na kokamba na mosika mpe enregistrement ya ba données.
Nzete ya mbala ya WS2812 ezali na ba LED RGB oyo moko na moko ekoki kokamba, elingi koloba ete LED moko na moko ekoki kokamba mpo na kolakisa ba couleurs ndenge na ndenge. Nzete yango esalaka na protocole ya singa moko, oyo epesaka nzela ya kosangisa ba LED ebele na kobungisa te qualité ya signal. LED moko na moko ezali na driver oyo esalemi na kati oyo azwaka signal ya bokɔtɔ mpe abakisaka yango mpo na LED oyo elandi na nzete.
Ba Détails ya Datasheet
| Mosali | Worldsemi |
|---|---|
| Numéro ya partie | WS2812 |
| Tension ya logique/IO | 3.5–5.3 V |
| Tension ya alimentation | 5 V |
| Courant ya sortie (na canal) | 20 mA max |
| Courant ya pointe (na canal) | 60 mA max |
| Directive ya fréquence PWM | 400 Hz |
| Ba seuils ya logique ya bokɔtɔ | 0.3 x VDD to 0.7 x VDD |
| Bokiti ya tension / RDS(on) / saturation | 0.5 V max |
| Ba limites ya température | -25 to 80 °C |
| Emballage | 5050 |
| Ba notes / ba variantes | Ekoki kosangisama mpo na ba nzete milayi |
- Kokamba malamu ya courant (5 V) mpo na kobuka te ba LED.
- Salela capacitor (100 µF) na kati ya ba terminaux ya alimentation mpo na kokitisa ba pointes ya tension.
- Kokeba ete ba singa ya données ezala mikuse mpo na kokitisa bokono ya signal.
- Keba na température ya LED; kotalela ete esika ya kopanza moto ezala malamu.
- Kotala polarité ya malamu ntango okosangisa courant mpe terre.
- Salela résistance ya pull-up na singa ya données soki ozali kosalela ba nzete milayi.
Ba Instructions ya Câblage

Mpo na kosangisa nzete ya mbala ya WS2812 na ESP32, banda na kosangisa alimentation. Singa ya +5V ya nzete ya mbala esengeli kosangisama na pin ya 5V na ESP32, mpe singa ya terre (GND) esengeli kosangisama na moko ya ba pins ya GND na ESP32.
Na sima, sangisa singa ya bokɔtɔ ya ba données ya nzete ya mbala na pin 14 na ESP32. Kotala ete ba connexions ezala ya makasi mpo na kopesa nzela ya transmission ya malamu ya ba données. Soki ozali kosalela ba nzete ebele to ba mosika milayi, kanisa kosalela level shifter mpo na kokamba malamu ya signal. Esaleli oyo ekopesa yo nzela ya kokamba nzete ya mbala na esika moko na ESP32.
Ba Exemples ya Code & Explication
Code yango esalelaka bibliothèque ya Adafruit NeoPixel mpo na kokamba nzete ya mbala ya WS2812. Ebandaka na kotinda nzete ya mbala mpe na kotia couleur ya liboso na noir. Ba identifiants ya minene na code ezali LED_PIN, oyo endimaka pin oyo esangisami na singa ya ba données ya nzete ya mbala, mpe NUM_LEDS, oyo endimaka motango ya ba LED na nzete.
#include // Kotia bibliothèque ya Adafruit NeoPixel
#define LED_PIN 14 // Nzete ya mbala ya NeoPixel
#define NUM_LEDS 8 // Motango ya ba LED
Na fonction ya setup, nzete yango ebandisamaka na kosalela strip.begin(), mpe couleur ya liboso etiamaka na noir na strip.show(). Oyo ebongisaka nzete yango mpo na ba changements ya ba couleurs ntango programme ezali kosala.
void setup() {
strip.begin(); // Bandisa nzete ya NeoPixel
strip.show(); // Tia couleur ya liboso na noir
}
Boucle ya liboso ya programme ezali na ba boucles mibale ya for. Boucle ya liboso ezali kopelisa LED moko na moko na kotia couleur na yango mpe na kobongola nzete yango. Boucle ya mibale ezali kokufisa LED moko na moko na ndenge moko. Oyo esalaka animation ya pole mpe ya kitoko mpe ya efficacité.
void loop() {
// Pelisa ba LED moko na moko
for (int i = 0; i < NUM_LEDS; i++) {
strip.setPixelColor(i, 100, 45, 0); // Tia couleur ya LED ya i na rouge
strip.show(); // Kobongola nzete ya mbala na ba couleurs ya sika
delay(100); // Zelaki mwa secondes 100
}
// Kufisa ba LED moko na moko
for (int i = 0; i < NUM_LEDS; i++) {
strip.setPixelColor(i, 0, 0, 0); // Tia couleur ya LED ya i na noir (kufisa yango)
strip.show(); // Kobongola nzete ya mbala na ba couleurs ya sika
delay(100); // Zelaki mwa secondes 100
}
}
Tala code ya mobimba oyo ezali na nse ya article mpo na ba détails mingi na ndenge ya kosala ba effets ya ba couleurs ndenge na ndenge mpe ba animations.
Démonstration / Nini Okokanela
Nsukomi osilii mokanda ya bobongoli mpe okotisi kode, okomona ete ba LED na nzete ezali kopelama moko na moko na langi oyo eponami, mpe nsima ezali kokufa na molongo ndenge moko. Boye esalaka "mwinda ya kotambola". Soki ba LED ezali kopelama te ndenge ozalaki kolikia, tala lisusu ba connexions na yo mpe sɔɔkɔ ete courant ezali ya kokoka. Mpe tala ete pin ya solo ekomami na kode (na vidéo na 12:30).
Biloko ya Vidéo na Ngonga
- 00:00 Ebandeli
- 1:40 Boyebisi ya WS2812 LED
- 7:25 Lokasa ya mikanda ya projɛ
- 9:16 Ndimbola ya langi RGB
- 13:16 Ndimbola ya bobongoli ya ba connexions
- 13:48 Ndimbola ya Arduino Code-1
- 19:03 Kopona carte ESP32 mpe Port na Arduino IDE
- 20:45 Kode-1 Demo
- 22:00 Kokamba LED moko na moko
- 24:16 Mwinda ya kotambola ya LED
- 25:41 Mwinda oyo ekendaka mpe ezwandaka
#include <Adafruit_NeoPixel.h> // Include the Adafruit NeoPixel library
#define LED_PIN 14 // NeoPixel LED strip
#define NUM_LEDS 8 // Number of LEDs
// Create an instance of the Adafruit_NeoPixel class
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
strip.begin(); // Initialize the NeoPixel strip
strip.show(); // Set initial color to black
}
void loop() {
// Turn on LEDs one by one
for (int i = 0; i < NUM_LEDS; i++) {
strip.setPixelColor(i, 100, 45, 0); // Set the color of the i-th LED to red
strip.show(); // Update the LED strip with the new colors
delay(100); // Wait for 100 milliseconds
}
// Turn off LEDs one by one
for (int i = 0; i < NUM_LEDS; i++) {
strip.setPixelColor(i, 0, 0, 0); // Set the color of the i-th LED to black (turn it off)
strip.show(); // Update the LED strip with the new colors
delay(100); // Wait for 100 milliseconds
}
}
Common Course Links
Common Course Files
Nko o na nki.
-
Amazon
-
eBay
-
AliExpressPurchase WS2812 LED strip from AliExpresss.click.aliexpress.com
-
AliExpressPurchase WS2812 LED strip from AliExpress-2s.click.aliexpress.com
-
BanggoodPurchase WS2812 LED strip from Banggoodbanggood.com
Mokili na bisika
Pas encore de ressources.
Fichiers📁
Aucun fichier disponible.