Nell’articolo di oggi vedremo come utilizzare i PIN GPIO. Esploreremo anche la parte elettronica d’ora in avanti, inizieremo con l’utilizzo dei LED RGB.
Lista componenti
- ESP32-WROVER
- Breadboard
- LED RGB
- 3x resistor 220 ohm
- 4x jumper
- GPIO extension board (falcolatitivo)
Descrizione componenti
LED RGB
I led RGB possono costituire un modo divertente per aggiungere originalità e divertimento al proprio progetto.
Il led RGB può essere considerato come l’unione di tre led (uno rosso, uno verde ed uno blu) in una struttura singolare. L’utilizzo e la connessione (sia a livello elettronico e sia a livello di programmazione) non è molto differente rispetto ai LED classici.
Esistono nel mercato due differenti versioni di LED RGB, la prima con Anodo in comune, e la seconda con Catodo in comune. La versione con Anodo in comune utilizza i 5V sul pin, mentre la seconda versione con catodo in comune utilizza la messa a terra GND sul pin.
Per far si che avvenga il corretto funzionamento del LED RGB vi è data la necessità di utilizzare tre resistenze in modo tale da limitare la corrente che lo attraversa.
Un LED RGB è un led che al suo interno dispone di 3 diversi semiconduttori, ognuno in gradi di emettere un differente colore e in particolare rosso, verde e blu. Come ben noto tutti i colori dello spettro possono essere realizzati da una combinazione dei colori fondamentali rosso verde e blu.
Si tratta di un semplice sistema PWM variare la luminosità dei LED, e considerando che il PWM di Arduino può avere valori da 0 a 255, possiamo associare a questo valore la quantità di colore e andare a formare gli altri colori. Ad esempio settando il PWM del rosso a 128 e il PWM del blu a 255 possiamo ottenere il viola.
Pulse Width Modulation (PWM) è una tecnica per controllare la potenza. In questo caso è utilizzato per controllare la luminosità di ogni singolo LED. La pulsazione è controllata dalla funzione analogWrite. I valori che può assumere tale funzione variano da 0 e 255,
Collegamenti
In seguito schema e diagramma di collegamento. Per costruire un circuito ricordati di tenere la scheda spenta.
Codice
Se questo è il tuo primo articolo ti invito di leggere prima questo per l’installazione dei driver della scheda. Ecco qui un piccolo riepilogo prima di compilare e caricare il codice.
Ecco qui lo sketch:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
const byte ledPins[] = {15, 2, 4}; //define red, green, blue led pins const byte chns[] = {0, 1, 2}; //define the pwm channels int red, green, blue; void setup() { for (int i = 0; i < 3; i++) { //setup the pwm channels,1KHz,8bit ledcSetup(chns[i], 1000, 8); ledcAttachPin(ledPins[i], chns[i]); } } void loop() { red = random(0, 256); green = random(0, 256); blue = random(0, 256); setColor(red, green, blue); delay(200); } void setColor(byte r, byte g, byte b) { ledcWrite(chns[0], 255 - r); //Common anode LED, low level to turn on the led. ledcWrite(chns[1], 255 - g); ledcWrite(chns[2], 255 - b); } |
Compila e carica il codice sull’ESP32, ed ecco qui che il LED comincerà a lampeggiare con un intervallo di tempo pari a 1 secondo.
Iscriviti ai nostri gruppi Telegram
Link utili
- Arduino UNO R3
- Elegoo UNO R3
- Arduino Starter Kit per principianti
- Elegoo Advanced Starter Kit
- Arduino Nano