Цитата(smk @ Feb 14 2008, 00:44)

unsigned int ac; //глобальная
A_SIG = EEPROM_read_16 (10, 11); //тоже int читается из EEPROM
B_SIG = EEPROM_read_16 (14, 15);
#define a_on PORTA &= ~(1<<1);
#define b_on PORTA &= ~(1<<0);
#define buzz_on DDRB |= (1<<2);
макросы написаны не очень, но в принципе криминала никакого нет,
разьве что ; где-нить уберите, или в определении или в подстановке,
хотя это тоже не криминал.
Ну и для макросов строго обязательно все заключать в скобки, те например
#define SHIFT 5
#define MYBIT (1<<SHIFT)
Если убрать скобки в определении MYBIT, будете "долго жевать сопли замоченные в сортире..." © ВВП
А зачем у Вас передается 2 числа в EEPROM_read_16 ?
Адреса ячеек ? 16 бит у Вас может храниться не в соседних ячейках ?
А по Вашей проблеме, ну... проект в студию что ли...
Выкидывать обращения к PORTA компилятор права не имеет...
Если Вы конечно его не переопределили..