E ae galera, estou com um problema aqui.
Estou tentando fazer um contador regressivo, porém, meu código não está funcionando como eu esperava. Ele deveria repetir a iteração à cada 1 seg. Porém, o laço está funcionando à cada 1 ms e eu não faço ideia do porque
int min = 0;
int sec = 300;
int starttime = 0;
void setup(){
Serial.begin(9600);
}
//----------------------------------------------------
void loop(){
starttime = sec;
if(sec > 60)
{
min = floor(sec/60);
if(sec%60 != 0){
sec = sec- min;
}
else
{
sec = 59;
}
}
while(min >= 0){
while(millis()/1000 < starttime)
{
sec--;
Serial.println(min*100+sec);
}
min--;
sec = 59;
}
}
Vale lembrar que eu não posso usar delay() porque vou fazer a impressão do número resultante num 4x 7 segment BCD display.
Alguém pode me ajudar ?