Arduino: uscita PWM e LED

Ciao a tutti!

Come avrete sicuramente notato nella scheda Arduino (Uno-Mega ecc.) sono presenti dei PIN che hanno accanto al numero anche un simbolo simile ad un’onda (  ).

10966922_718353928262563_2052976409_n

Questo simbolo indica che l’uscita può essere usata anche in “PWM” ovvero “Pulse-width modulation” tradotto in italiano “modulazione di larghezza d’impulso”.

Usando questa funzione è possibile variare, per esempio, la frequenza di accensione e spegnimento di un LED.

In questo modo:

_
Linea ALTA acceso Linea BASSA spento

Adesso passiamo alla pratica.

Montiamo il circuito seguendo l’immagine seguente:

pwm
La resistenza utilizzata è di 220 Ohm

Adesso passiamo allo sketch:

[c]

//————————————//
// Created by //
// Alessio Bigini 2015 //
// https://alessiobigini.it //
//————————————//
int lum = 0;
//Imposto il pin 9 in uscita
void setup() {
pinMode(9, OUTPUT);
}
void loop()
{
for (lum = 0; lum < 255; lum++ ) //Aumento la luminosità
{
analogWrite(9, lum);
delay(10);
}
for (lum = 255; lum > 0; lum– ) //Diminuisco la luminosità
{
analogWrite(9, lum);
delay(10);
}
}

[/c]

In questo codice ho utilizzato due semplici cicli For che mi permettono di incrementare la variabile “Lum” da 0 fino a 255 e poi decrementarla.

Una volta scritto lo sketch carichiamolo sulla nostra scheda  vedremo che il nostro LED si accenderà e si spegnerà in modo graduale.

Adesso che abbiamo appreso le basi per utilizzare il PWM possiamo sbizzarrirci a creare progetti che non si limitino soltanto ad ON – OFF, ACCESO – SPENTO.

A seguire il video del progetto finito:

[embedplusvideo height=”400″ width=”600″ editlink=”http://bit.ly/1xzo9dW” standard=”http://www.youtube.com/v/Zt_Nx9Rh0wg?fs=1″ vars=”ytid=Zt_Nx9Rh0wg&width=600&height=400&start=&stop=&rs=w&hd=0&autoplay=0&react=1&chapters=&notes=” id=”ep8915″ /]