Appunti di programmazione su Arduino: orologio interno

delay(ms)

Mette in pausa un programma per la quantità di tempo specificata in millisecondi, un valore di 1000 millisecondi equivale a 1 secondo.

delay(1000);   // attende per 1 secondo

millis()

Restituisce il numero di millisecondi da quando la scheda Arduino ha incominciato l’esecuzione del programma corrente. Il tipo di dato è un unsigned long.

value = millis();   // imposta la variabile 'value'
                    // al valore restituito dalla funzione

Nota: questo valore va in overflow (supera il limite della memoria) per cui ricomincia da zero dopo circa 9 ore.

micros()

Restituisce il numero di microsecondi da quando la scheda Arduino ha incominciato l’esecuzione del programma corrente. Il tipo di dato è un unsigned long.

Nota: questo valore va in overflow (supera il limite della memoria) per cui ricomincia da zero dopo circa 70 minuti.

Sulle schede Arduino a 16MHz (ad es. Duemilanove e Nano), questa funzione ha una risoluzione di 4 microsecondi (il valore restituito è un multiplo di 4 secondi). Sulle schede Arduino a 8 MHz (ad es. LilyPad), questa funzione ha una risoluzione di 8 microsecondi.

Nota: ci sono 1.000 microsecondi in un millisecondo e 1.000.000 di microsecondi in un secondo.

delayMicroseconds(us)

Mette in pausa il programma per una quantità di tempo (in microsecondi) specificato dal parametro della funzione. Il tipo di dato è un unsigned long.

delayMicrosecons(1000);   // attende un millesimo di secondo

Per le lezioni precedenti consultare la sezione Appunti di programmazione che trovate nella pagina Arduino di questo sito.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.