Leggiamo ora il segnale di un potenziometro che invia il suo segnale ad una porta analogica di Arduino ed usiamolo per variare la luminosità di un Led.
Il potenziometro ha al suo interno una combinazione di resistenze che può variare, ruotando l'asse, da 0 a circa 10.000 Ohm. Se collegato ad una tensione di 5 Volt può variare la tensione in uscita (tra il suo pin centrale ed il GND) da 5 Volt (con 0 Ohm di resistenza) a circa 0 Volt (con 10 KOhm di resistenza).
Se questo tipo di segnale elettrico giunge ad Arduinio attraverso una porta Analogica, il Convertitore Analogico Digitale (ADC) lo traduce in un numero variabile tra '0' (0V in ingresso) e '1023' (5V in ingresso), leggibile attraverso il comando analogRead().
Il Convertirore Analogico Digitale del microcontrollore Arduino Uno ha una risoluzione di lettura impostata a 10 bit, ovvero può esprimere un numero binario di 10 cifre corrispondente a numeri decimali compresi tra 0 e 1023. Complessivi 2^10 numeri. In altri micorontrollori qesta risoluzione può essere modificata, in genere da 9 a 12, attraverso il comando analogReadResolution(9);
Comunque il valore (0-1023) può poi essere utilizzato, rimappandolo nell'intervallo 0 - 255 (far corrispondere a 0 il valore 0, a 1023 il valore 255 ed a tutti i valori intermedi, tra 0 e 1023, i rispettivi valori intermedi tra 0 e 255), per variare la luminosità di un Led collegato ad un Pin PWM.
Costruire il seguente circuito con un potenziometro in aggiunta ai componenti già utilizzati:
Leggere con attenzione, comprendere, copiare, incollare nell'IDE, e caricare su Arduino il seguente codice:
Una volta caricato il codice ruotate il regolatore del potenziometro e verificate che contemporaneamente vari anche la luminosità del Led. Aprite anche il Monitor seriale per leggere i valori delle due variabili.