Вот столкнулся с проблемой....прерывание по INT0....
на прерывание откликается ...переходит в обработчик прерывания...выполняет все указанные действия....
пример - очистка lcd и выдача на него информации, поле этого стоит return... однако выходить из данной
функции нежелает....спустя 10 секунд, все-таки ввозвращается в исходное меню..
контроллер ATmega16.... среда IAR
Код
#pragma vector=INT0_vect
__interrupt void IRQ(void)
{
IRQ_DIS;
GICR |= (1<<6);
clear_lcd();
write_data_lcd(GICR, 0xa0);
write_data_lcd(GIFR, 0xe0);
delay_1ms(500);
IRQ_EN;
return;
}
__interrupt void IRQ(void)
{
IRQ_DIS;
GICR |= (1<<6);
clear_lcd();
write_data_lcd(GICR, 0xa0);
write_data_lcd(GIFR, 0xe0);
delay_1ms(500);
IRQ_EN;
return;
}