Masz procka więc czasówka nie jest potrzebna. Zagoń do roboty timera programowego
![Szczęśliwy :-)](https://forum.atnel.pl/images/smilies/icon_e_smile.gif)
Podam Ci kilka klocków a Ty ułóż to w jedną całość.
Najpierw timer programowy. Przerwanie co 10ms:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Obsługa przerwania:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
W pętli głównej dodajesz obsługę ósmego przycisku analogicznie jak poprzednie przyciski.
W funkcji, wywołanej wciśnięciem przycisku, wyłączasz 6 lamp i nakręcasz timer:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
A w pętli głównej sprawdzasz czy timer programowy doliczył do zera. Jeśli tak wyłączasz ostatnią lampę
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Nie twierdzę, że to jest jest najlepsze rozwiązanie. Jedno z wielu ale działa zgodnie z założeniami.
Program testowałem na ATB z Atmegą32 taktowaną wew. oscylatorem 8MHz.