Już wiem co powoduje wyświetlanie komunikatu błędu. Jak zaremowałem wszystkie linijki treści: "Getrc5(address , Command)" - jest ok. TIMER0 jest wolny, tylko Getrc5 domyślnie z niego korzysta. Wykorzystuję jedynie TIMER2 do multipleksowania. Kod jest bardzo długi bo jest tam sporo zbędnych bajerów. Trudno będzie Wam w nim się doszukać błędu. Zrobiłem już to za Was. Wycinałem po kawałku fragmenty kodu i sprawdzałem błędy kompilacji. Na 100% błędy powoduje zapis dotyczący odbioru RC-5. Dlaczego Atmegi 16 i 32 się kompilują z Getrc5(address , Command), a 644 nie chce?
Dodano po 8 [minuty]:
Jestem na tropie... Zamienię Timery. Getrc5 dam na Timer2, a Timer2 do multipleksowania zamienię na Timer0. Chyba to zadziała. Wstępnie już przetestowałem i się kompiluje po zamianie Timera przy Getrc5.
Dodano po 19 [minuty]:
Wszystko jest ok. Program się pomyślnie skompilował, wgrałem do procka ATmega644 i zegarek śmiga. Nie wiem dlaczego dokładnie, ale prawdopodobnie różnice są sporo większe w budowie Atmegi32 czy ATmegi16 w stosunku do Atmegi644 niż tylko pojemności pamięci i dodatkowy USART. Reasumując: ATmega644 w Bascomie-AVR potrzebuje konfiguracji Getrc5 na Timerze2. Praktycznie zrobiłem tak: "Config Rc5 = Pind.2 , Timer = 2" i kompilacja ruszyła. Kolegom dziękuję za pomoc, temat uważam za zamknięty.