Я пытаюсь отобразить таймер, который считает до 70 секунд, однако, как только он достигает 65, он перезапускается (l oop). Это произошло после того, как я добавил basetime=millis();
и currtime = millis()-basetime;
. (Это работает, когда я удаляю эти два, но я добавил, потому что я хочу, чтобы millis()
был сброшен в ноль, как только он достигнет 70 секунд). Кто-нибудь может помочь мне в этом? Дайте мне знать, если мой полный код нужен. Спасибо!
void loop() {
basetime = millis();
seconds = 0;
seconds2 = 0;
minutes = 0;
for (seconds == 0; seconds <= 70; seconds++) {
time();
}
}
void time() {
currtime = millis() - basetime;
tft.textSetCursor(100, 100);
tft.textColor(RA8875_WHITE, RA8875_RED);
sprintf(timeline, "%02d hours %02d mins %02d secs", hours, minutes, seconds2);
tft.print(timeline);
delay(1000);
tft.textSetCursor(200, 300);
tft.textColor(RA8875_WHITE, RA8875_RED);
tft.print("Deg C = ");
tft.print(ktc.readCelsius());
delay(1000);
seconds = currtime / 1000;
minutes = (currtime / 1000) / 60;
seconds2 = seconds - (minutes * 60);
minutes = minutes - (hours * 60);
hours = ((millis() / 1000) / 60) / 60;
}