В atmega64L столкнулся с такой проблемой. Программу пишу на Си в AVRStudio под WINAVR. Текст программы такой: int main(void) { Init_ports();
PORTD = 0xC7;
while(1);
}
void Init_ports(void) { DDRD = 0x38; PORTD = 0xCF;
return; }
В результате после программирования и включения устройства напржение на PORTD.3 = 1, а не 0 как должно быть. Создается впечатление что микроконтроллер не выходит из подпрограммы. Хотя в симуляторе все работает. Если текст подпрограммы вынести в главную функцию, то все работает правильно. В чем может быть проблема? Может в настройках WINAVR?
|