Introduzione
Nei progetti precedenti abbiamo utilizzato la funzione:
delay()
per controllare il tempo.
Il problema è che delay blocca completamente il programma.
Durante il delay Arduino non può fare altre operazioni.
Nei progetti più avanzati questo diventa un limite.
Per questo motivo Arduino mette a disposizione una funzione molto importante:
millis()
Questa funzione restituisce il tempo trascorso dall'avvio della scheda, permettendo di controllare il tempo senza bloccare il programma.
Questo metodo è chiamato:
👉 programmazione non bloccante
Nei progetti precedenti abbiamo utilizzato la funzione:
delay()
per controllare il tempo.
Il problema è che delay blocca completamente il programma.
Durante il delay Arduino non può fare altre operazioni.
Nei progetti più avanzati questo diventa un limite.
Per questo motivo Arduino mette a disposizione una funzione molto importante:
millis()
Questa funzione restituisce il tempo trascorso dall'avvio della scheda, permettendo di controllare il tempo senza bloccare il programma.
Questo metodo è chiamato:
👉 programmazione non bloccante
Materiale necessario
- Arduino Uno (o compatibile)
- LED
- Resistenza 220Ω
- Breadboard
- Cavi jumper
🧰 Non hai ancora i componenti?
Molti dei progetti presenti su progettiarduino.com utilizzano componenti elettronici di base come LED, resistenze, sensori e breadboard.
Se stai iniziando con Arduino, il modo più semplice è utilizzare un kit completo per principianti, che include quasi tutti i componenti necessari per realizzare molti dei progetti presenti sul sito.
👉 Kit Arduino consigliato:
https://amzn.to/4b3dxjW
ℹ️ Link di affiliazione Amazon: in qualità di Affiliato Amazon ricevo un guadagno dagli acquisti idonei, senza alcun costo aggiuntivo per te.
📘 Vuoi imparare Arduino passo dopo passo?
Se vuoi approfondire e realizzare progetti più completi, puoi dare un'occhiata anche ai miei libri dedicati ad Arduino.
All'interno troverai spiegazioni semplici, schemi chiari e molti progetti pratici pensati per chi parte da zero.
👉 Scopri i miei libri su Arduino:
https://amzn.to/4rfzjXE
ℹ️ Link di affiliazione Amazon: in qualità di Affiliato Amazon ricevo un guadagno dagli acquisti idonei, senza alcun costo aggiuntivo per te.
Molti dei progetti presenti su progettiarduino.com utilizzano componenti elettronici di base come LED, resistenze, sensori e breadboard.
Se stai iniziando con Arduino, il modo più semplice è utilizzare un kit completo per principianti, che include quasi tutti i componenti necessari per realizzare molti dei progetti presenti sul sito.
👉 Kit Arduino consigliato:
https://amzn.to/4b3dxjW
ℹ️ Link di affiliazione Amazon: in qualità di Affiliato Amazon ricevo un guadagno dagli acquisti idonei, senza alcun costo aggiuntivo per te.
📘 Vuoi imparare Arduino passo dopo passo?
Se vuoi approfondire e realizzare progetti più completi, puoi dare un'occhiata anche ai miei libri dedicati ad Arduino.
All'interno troverai spiegazioni semplici, schemi chiari e molti progetti pratici pensati per chi parte da zero.
👉 Scopri i miei libri su Arduino:
https://amzn.to/4rfzjXE
ℹ️ Link di affiliazione Amazon: in qualità di Affiliato Amazon ricevo un guadagno dagli acquisti idonei, senza alcun costo aggiuntivo per te.
Schema di collegamento
LED
LED
- pin 9 → resistenza 220Ω → anodo LED
- catodo → GND
Codice Arduino
Progetto 14 - LED lampeggio con millis()
Come funziona il programma
La funzione:
millis()
restituisce il tempo trascorso dall'avvio di Arduino.
Il programma controlla continuamente la differenza tra:
currentMillis
e
previousMillis
Quando la differenza supera l'intervallo impostato, il LED cambia stato.
Questo metodo permette ad Arduino di continuare a eseguire altre operazioni mentre il tempo scorre.
La funzione:
millis()
restituisce il tempo trascorso dall'avvio di Arduino.
Il programma controlla continuamente la differenza tra:
currentMillis
e
previousMillis
Quando la differenza supera l'intervallo impostato, il LED cambia stato.
Questo metodo permette ad Arduino di continuare a eseguire altre operazioni mentre il tempo scorre.
Varianti possibili
Controllare più LED
È possibile gestire più LED con intervalli diversi.
Timer non bloccante
Lo stesso metodo può essere usato per creare timer e automazioni avanzate.
Controllo sensori
Il programma può leggere sensori mentre il LED lampeggia.
Controllare più LED
È possibile gestire più LED con intervalli diversi.
Timer non bloccante
Lo stesso metodo può essere usato per creare timer e automazioni avanzate.
Controllo sensori
Il programma può leggere sensori mentre il LED lampeggia.