Hierdie tutoriaal demonstreer hoe om die helderheid van 'n LED te beheer met behulp van 'n ESP32-mikrobeheerder, spesifiek die SunFounder ESP32 IoT-leerkit (in video by 00:04). Hierdie projek is ideaal vir beginners wat leer oor polsswydtemodulasie (PWM) en die toepassings daarvan in die beheer van die intensiteit van ligbronne. Die ESP32 se ingeboude PWM-vermoëns maak gladde, presiese beheer moontlik, wat 'n wêreld van moontlikhede vir kreatiewe projekte oopmaak.
Praktiese Toepassings:
Skep van omgewingsbeligtingstelsels met verstelbare helderheid.
Bou van 'n eenvoudige naglig met geleidelike verdowing.
Ontwikkel van 'n dinamiese aanwyserlig vir verskeie toestande (bv. lae battery, netwerkverbinding).
Integreer met ander sensors en aktueerders om komplekse interaktiewe installasies te skep.
Hardeware/Komponente
Die projek gebruik die SunFounder ESP32-starterkit (in video by 00:12), wat 'n ESP32-mikrobeheerder, 'n uitbreidingsbord, verskeie komponente en 'n 18650-litiumbattery insluit. Jy sal ook 'n LED en 'n 220-ohm-weerstand nodig hê (in video by 04:32).
Bedradingsgids
Verwys na die bedradingsdiagram in die video (in video by 01:46 en 04:18) en die gedetailleerde verduideliking by tydstempel 04:40. Die bedrading behels die verbinding van die LED se anode aan die weerstand, die weerstand aan die ESP32 se GPIO 26-pen, en die LED se katode aan grond.
LED_met_Weerstand
LED in serie met 'n 220 ohm-weerstand. Hieronder is die bedrading op die broodbord.
LED_verdowing_ESP32
Kodeverduideliking
Die Arduino-kode gebruik Polsswydtemodulasie (PWM) om die LED se helderheid te beheer. Die belangrikste verstelbare dele is:
ledPin: Definieer die GPIO-pen wat aan die LED gekoppel is (in video by 09:41, gestel op 26). Verander dit as jy 'n ander pen gebruik.
fadeAmount: Beheer die tempo waarteen die LED se helderheid verander (in video by 10:06). 'n Hoër waarde lei tot vinniger verdowing. Die kode keer outomaties die rigting om wanneer die helderheid die minimum (0) of maksimum (255) waarde bereik (in video by 11:44).
const int ledPin = 26; // Die GPIO-pen vir die LED
int brightness = 0;
int fadeAmount = 5;
void setup() {
ledcAttachPin(ledPin, 0); // Heg pen aan PWM-kanaal
}
void loop() {
ledcWrite(ledPin, brightness);
brightness = brightness + fadeAmount;
if (brightness <= 0 || brightness >= 255) {
fadeAmount = -fadeAmount;
}
delay(50);
}
Lewende Projek/Demonstrasie
Die video demonstreer die verdowende LED in aksie (in video by 14:51). Die instrukteur wys hoe om die fadeAmount-veranderlike aan te pas om die spoed van die verdowing te beheer (in video by 15:16 en 15:51). Die proses om die kode na die ESP32 op te laai word ook gewys (in video by 14:20).
791-ESP32 Tutorial 5/55 - LED Fade, control brightness of an LED in Arduino
Taal: C++
const int ledPin = 26; // The GPIO pin for the LED
int brightness = 0;
int fadeAmount = 5;
void setup() {
ledcAttach(ledPin, 5000, 8); // Attach the LED pin
}
void loop() {
ledcWrite(ledPin, brightness); // Write the new brightness value to the PWM pin
brightness = brightness + fadeAmount;
if (brightness <= 0 || brightness >= 255) {
fadeAmount = -fadeAmount;
}
delay(50); // Wait for 50 milliseconds
}
Openbaring: As 'n Amazon-assosiate verdien ons uit kwalifiserende aankope. Dit beteken ons mag 'n klein kommissie ontvang as jy op 'n skakel klik en 'n aankoop doen sonder enige ekstra koste vir jou.