Nota
Ciao, benvenuto nella Comunità degli Appassionati di Raspberry Pi, Arduino e ESP32 di SunFounder su Facebook! Approfondisci la tua conoscenza di Raspberry Pi, Arduino e ESP32 insieme ad altri appassionati.
Why Join?
Expert Support: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Learn & Share: Scambia consigli e tutorial per migliorare le tue competenze.
Exclusive Previews: Ottieni accesso anticipato alle nuove annunci di prodotti e anteprime esclusive.
Special Discounts: Goditi sconti esclusivi sui nostri prodotti più recenti.
Festive Promotions and Giveaways: Partecipa a giveaway e promozioni festive.
👉 Pronto per esplorare e creare con noi? Clicca [qui] e unisciti oggi!
Lezione 29: Modulo Semaforo
In questa lezione, imparerai a utilizzare una scheda di sviluppo ESP32 per controllare un Modulo Mini Semaforo. Tratteremo la configurazione della scheda e la scrittura del codice per creare una sequenza semaforica: 5 secondi di luce verde, luce gialla lampeggiante per 1,5 secondi e 5 secondi di luce rossa. Questo progetto è ideale per i principianti in elettronica e programmazione, poiché fornisce esperienza pratica con le operazioni di output e il controllo base dei tempi usando l’ESP32.
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È decisamente conveniente acquistare un kit completo, ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
---|---|---|
Kit Sensori per Maker Universali |
94 |
Puoi anche acquistarli separatamente dai link qui sotto.
Introduzione al Componente |
Link per l’Acquisto |
---|---|
ESP32 & Scheda di Sviluppo (ESP32 WROOM 32E) |
|
Cablaggio

Codice
Analisi del Codice
Prima di qualsiasi operazione, definiamo costanti per i pin dove sono collegati i LED. Questo rende il nostro codice più facile da leggere e modificare.
const int rledPin = 25; //rosso const int yledPin = 26; //giallo const int gledPin = 27; //verde
Qui, specifichiamo le modalità dei pin per i nostri pin LED. Sono tutti impostati su
OUTPUT
perché intendiamo inviare tensione a loro.
void setup() { pinMode(rledPin, OUTPUT); pinMode(yledPin, OUTPUT); pinMode(gledPin, OUTPUT); }
Qui è dove è implementata la nostra logica del ciclo semaforico. La sequenza delle operazioni è:
Accendere il LED verde per 5 secondi.
Lampeggiare il LED giallo tre volte (ogni lampeggio dura 0,5 secondi).
Accendere il LED rosso per 5 secondi.
void loop() { digitalWrite(gledPin, HIGH); delay(5000); digitalWrite(gledPin, LOW); digitalWrite(yledPin, HIGH); delay(500); digitalWrite(yledPin, LOW); delay(500); digitalWrite(yledPin, HIGH); delay(500); digitalWrite(yledPin, LOW); delay(500); digitalWrite(yledPin, HIGH); delay(500); digitalWrite(yledPin, LOW); delay(500); digitalWrite(rledPin, HIGH); delay(5000); digitalWrite(rledPin, LOW); }