Come funziona il PWM di Arduino?

Questo tutorial è pensato per gli utenti che stanno muovendo i primi passi con Arduino ed hanno ancora la loro board con un led attaccato e sono stufi del solito lampeggio.. :)

Se sei tra quelli questo sketch metterà un po' di pepe nella tua vita e ti mostrerà che Arduino non è solo bianco o nero (HIGH o LOW..) ma è anche grigio, 255 sfumature (di grigio).

Infatti questo semplice tutorial sfrutta la funzione PWM del nostro Arduino che permette di avere un uscita non solo di 0 o 5 volt, ma simula i valori che ci stanno in mezzo, permettendovi di vedere un led con differenti livelli di luminosità.

Come fa? così.



Quando utilizziamo la funzione PWM, Arduino commuta l'uscita molto velocemente (circa 500 volte al secondo, 488hz sui pin 3,9,10 e 11, 976hz sui pin 5 e 6) tra i 2 valori 0 volt e 5 volt, così velocemente che collegando un led su quel pin, l'occhio umano non è in grado di vedere questo lampeggio, velocissimo.

Però variando il DUTY CYCLE, si noterà una differenza di luminosità del led.
Il duty cycle è semplicemente la durata dell'impulso a 5 volt rispetto alla durata dell'impulso a 0 volt.
Maggiore sarà la durata dell'impulso a 5 volt rispetto a quello a 0 volt, maggiore sarà la luminosità del led (vedi il grafico sopra).

Collegamento diplay lcd ad Arduino via i2c con mcp23017

Questo semplice tutorial è pensato per quei progetti che richiedono l'uso di un numero di porte maggiore di quelle che il vostro Arduino Uno può offrirvi.
Infatti, grazie all'uso di un I/O expander (in questo caso il Microchip MCP23017) è possibile moltiplicare le porte a nostra disposizione.
Uno di questi ci permette di aumentare il numero delle porte fino a 16, che possono essere impostate sia come ingressi che come uscite.



Un dispositivo che senza dubbio richiede molti pin è il display LCD, ed è per questo che ho messo un esempio di collegamento proprio per questo dispositivo.
Infatti dalle 7 porte normalmente necessarie al collegamento, ridurremo questo numero a 2 soltanto, cosa che ci tornerà sicuramente utile nella realizzazione di grossi progetti.
Vediamo un video che ne dimostra il funzionamento:

Costruiamo un semplice semaforo con Arduino

Questo semplicissimo progetto è pensato per quei ragazzi che stanno studiando Arduino a scuola.
Sicuramente uno dei primi progetti con cui vi scontrerete sarà simile a questo, e quindi vi voglio dare una mano.

Il progetto funziona così:



Collegare un accelerometro MMA7361 ad Arduino

In questo tutorial vi mostrerò come collegare ed utilizzare un accelerometro MMA7361 con Arduino.




Questo sensore è stato comprato su ebay ad un prezzo di circa 6 euro, non sarà il più preciso del mercato, ma va benissimo per semplici esperimenti.


Arduino: Led RGB e Potenziometro


In questo semplice progetto vedremo come far si che alla rotazione di un potenziometro il nostro led RGB emetta una sfumatura di colore diversa.

DHT11 e Arduino: Termometro con temperatura minima e massima



Questo progetto è una versione modificata del più semplice termometro / igrometro digitale
L'obiettivo è di ottenere un termometro con indicazione di temperatura minima e massima.
Continuando a leggere potrai realizzarlo anche tu!

Memorizzare un valore nella EEPROM di Arduino

Arduino possiede una memoria di tipo EEPROM (Electrically Erasable Programmable Read-Only Memory), questa memoria è cancellabile elettricamente e quindi è possibile utilizzarla tramite lo stesso Arduino per salvare dei dati che ci interessano.

Il bello di questa memoria è che, anche togliendo tensione al circuito, il dato resta memorizzato.
Successivamente, dando nuovamente alimentazione, posso leggere i valori precedentemente salvati.
Grazie a questa memoria, ad esempio, è possibile memorizzare dati di temperatura catturati con un sensore in momenti differenti e poi rileggerli tutti insieme quando lo desidero.

In Arduino Uno la EEPROM è di 1KB, che sono 1024 Byte, possiamo quindi memorizzare 1024 numeri con valori compresi tra 0 e 255.

Ho realizzato un piccolo progetto per fare le prime prove sulla EEPROM, funziona così (scusate x la musica XD):


Entriamo più nel dettaglio della realizzazione:

Altri Post