Błąd jest w tym, że ty sam sobie wymyśliłeś że jak jest sobie OCR2 to znaczy że pewnie wszystkie rejestry z literką B na końcu są do kanału jakiegoś tam B, a te z literką A na końcu są do niby kanału jakiegoś A
a w książce dokładnie nie przeczytałeś o konfiguracji ani o tym, żeby ZAWSZE ale to ZAWSZE zaglądać (mieć otwartą notę PDF procka) przed sobą
zajrzyj więc do PDF ATmega328 i powiedz mi w jakim rejestrze masz bit WGM01 ???

chodzi mi o tą twoją linijkę:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
(bo przysięgami ci, że na pewno tego nie wziąłeś z noty PDF tylko z własnej głowy bo tak ci się wydawało)
i powiedz mi dlaczego wybrałeś przerwanie TIMER2_COMPB_vect a nie TIMER2_COMPA_vect ???
bo w książce piszę o tym ... ok jeśli chcesz sobie zmienić to jednak musisz doczytać już dalej sam w nocie .... z czym to się wiąże ...
a jeśli chcesz na spokojnie poćwiczyć i żeby ci łatwiej poszło to sprawdź najpierw z TIMER2_COMPA_vect i OCR0A

... a potem czytaj notę PDF, i próbuj dojść czym się to różni ok?
_________________
zapraszam na blog:
http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj
Kurs EAGLE ] [ mój kanał YT TV
www.youtube.com/mirekk36 ]