10-08-2019, 21:55
(Ten post był ostatnio modyfikowany: 10-08-2019, 22:09 przez Jarewa0606.)
A wyświetla się coś?? błąd jest ale mimo to jakieś krzaczki na wyświetlaczu powinny być do 60s powinno liczyć w miarę dobrze choć użycie funkcji delay w tym to pomyłka na 1s możesz mieć pomyłki 15%..
Nie resetujesz zmiennej "sec" a po drugie wysyłasz gdzieś indziej a jeszcze nie wyświetliło powinno być
No i ten if powinien być pierwszy by widzieć 59s-0s a nie 59s-60s-0s
No i najważniejsze sekundnik powinien być na przerywaniach to da bardzo dokładne wyniki. Wykorzystaj timer a nie delay. Od biedy można jeszcze użyć funkcji millis.
Kod:
if (sec == 60) { //changing minutes
mins++;
minutes();
lcd.setCursor(3, 1);
lcd.print("00");
}
Nie resetujesz zmiennej "sec" a po drugie wysyłasz gdzieś indziej a jeszcze nie wyświetliło powinno być
Kod:
if (sec == 60) { //changing minutes
mins++;
lcd.setCursor(3, 1);
lcd.print("00");
sec=0;
minutes();
}
No i ten if powinien być pierwszy by widzieć 59s-0s a nie 59s-60s-0s
No i najważniejsze sekundnik powinien być na przerywaniach to da bardzo dokładne wyniki. Wykorzystaj timer a nie delay. Od biedy można jeszcze użyć funkcji millis.
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą.