Jest to mój pierwszy wpis tutaj, więc na początek pragnę wszystkich serdecznie przywitać

Otóż mam problem z projektem pilota IR (realizowanym według rozdziału z bluebooka "Pilot na podczerwień"). Układ pracuje na plastikowej płytce stykowej, zasilany jest z baterii 4,5V.
Jako że nie miałem pod ręką attiny2313, użyłem atmegi8 i pozmieniałem odpowiednio rejestry i liczniki.
Problem polega na tym, że pilot najprawdopodobniej nie emituje prawidłowych ramek lub w ogóle nie generuje nośnej. Jakieś tam dane próbuje wysłać, bo po zwiększeniu prescalera w timerze1 służącym za odczekiwanie 889us (i wzięciu tym sposobem pod lupę emitowanej ramki) widzę, że dioda led sygnalizująca wysyłanie radośnie migocze.
Z braku tranzystora PNP użyłem NPN (BC547) i napisałem funkcje wysyłu danych o odwróconej logice stanów.
Proszę kogoś biegłego w rejestrach atmegi8 o sprawdzenie, czy poprawnie mam ustawione wartości rejestrów.
btw Zmieniłem też wpisy z przykładu w książce (KEY1)|(KEY2)|(KEY3)|(KEY4)|(KEY5) na KEYS_MASK ale to nie powinno mieć wpływu na nic...
Innym problemem jest to, że nie mogę wybudzić atmegi ze stanu powerdown poprzez INT0, ale to sprawa drugorzędna, dlatego na razie sleep_mode() ująłem w komentarz.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Kody wklejamy przy pomocy syntax=c - Różowo-zielony (czyli sraczkowy) J.