Multitasking con Arduino

Esempio di counter con millis

unsigned long tempo;
byte secondi=60;

void setup(){
tempo=millis();
}

void loop(){
if(millis()>=tempo+1000){
secondi--; //decremento i secondi
tempo=millis();
}

ogni 1000 mSec la variabile secondi si decrementa, ma se di seguito al if metti altro codice, verrà eseguito.
E' solo un esempio, non c'è nessun controllo... se secondi arriva a zero, poi va in negativo....