Cytuj:
Jak Powinno wyglądać uruchomienie timera w ATmega8A?
Może przedstawię to na kodzie którego sam używam.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
1/ Do tego momentu masz wszystko dobrze.
2/ Hmm dlaczego w tej linijce w nawiasach wpisałeś "OCIE1A"? Jak on nawet nie należy do timera 8 bitowego tylko 16 bitowego.
    Może nie uważnie czytałeś książkę, tego nie wiem. Ale otwórz ją na stronie 199, ostatni akapit, drugie zdanie. Jest tam jasno napisane: 
    "
Zauważ, że część bitów przedstawiona jest na szaro. Oznacza to, że te bity nie dotyczą Timer0 (u nas to Timer2), który właśnie jest      opisywany. Mamy zatem do dyspozycji tylko dwa bity - OCIE0 (u nas to OCIE2) oraz...".
Nie zauważyłem u Ciebie takiego fragmentu:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
To ten fragment odpowiada za tak "fajne" działanie przerwań.  
 
 1/ Zmienna pomocnicza na której są wykonywane obliczenia
2/ Jeżeli gdzieś w programie (ale o tym później) przypiszesz tej zmiennej (
Timer1) jakąś wartość to jest także oddawana zmiennej 
n.
3/ I tutaj jest warunek. Jeżeli zmienna 
n jest różna od zera wykonuje się działanie 
--n, czyli odejmowane jest 1 od zmiennej 
n i następnie przypisanie do 
Timer1.
A teraz kod który u Ciebie mógłby zmieniać stan diody LED na przeciwny co określony czas.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
1/ Tutaj sprawdzany jest warunek czy zmienna Timer1 jest równa 0, jeżeli tak to wykonają się następujące rzeczy. 
LED_TOG; - dioda zmieni stan na przeciwny i 
Timer1 = x; - do zmiennej Timer1 zostanie przypisana dowolna wartość (w miejsce x) wpisana przez Ciebie. 
I później za każdym obiegiem programu jest sprawdzana ta wartość czy już osiągnęła 0, jeśli nie, nic się nie dzieje.
Aa i jeszcze jedno, z racji tego, że do przerwania dochodzi co 10ms (100Hz), to aby dioda migała co 1s w zmienną Timer1 trzeba wpisać 100.
100*10=1000ms = 1s