Ciao,volevo sapere se si poteva resettare la funzione millis,una volta entrato nella funzione void loop,allego uno spezzone del codice :
int digit1 = 9; // PWM Display pin 6 [decine]
int digit2 = 6; // PWM Display pin 8 [unità ]
int segA = 11; // Display pin 14
int segB = 3; // Display pin 16
int segC = 4; // Display pin 13
int segD = 5; // Display pin 3
int segE = 10; // Display pin 5
int segF = 7; // Display pin 11
int segG = 8; // Display pin 15
int start_num=19; // countdown da...
int stop_num=19; // ...attesa countdown
unsigned long time;
unsigned long saveT0;
unsigned long saveT1;
void setup() {
pinMode(segA, OUTPUT);
pinMode(segB, OUTPUT);
pinMode(segC, OUTPUT);
pinMode(segD, OUTPUT);
pinMode(segE, OUTPUT);
pinMode(segF, OUTPUT);
pinMode(segG, OUTPUT);
pinMode(digit1, OUTPUT);
pinMode(digit2, OUTPUT);
pinMode(13, OUTPUT);
}
void loop() {
if((millis()/1000) <= start_num){
displayNumber(start_num -(millis()/1000));
saveT0=(millis()/1000);
}
if(saveT0 > start_num){
for(int saveT1 = stop_num ; saveT1 >= 0 ; saveT1--){
digitalWrite(13,HIGH);
delay(500);
digitalWrite(13,LOW);
delay(500);
saveT0=saveT1;
}
}
}
Quello che non riesco a fare/capire,una volta finita la seconda istruzione if(saveT0 > start_num),il codice rientri nella funzione void loop ripartendo da zero ,come se avessi resettato il micro,per caso devo resettare anche la funzione millis,giusto??come posso fare??
Grazie 1000 in anticipo,Mauro