Как разбудить микроконтроллер через External Interrupt
делаю так
Код:
GICR|=0xC0;
CUCR |= 0x0A;
GIFR=0xC0;
#asm("sei")
Код:
interrupt [EXT_INT1] void ext_int1_isr(void)
{
....
}
// прирывания с датчика спедометра
interrupt [EXT_INT0] void ext_int0_isr(void)
{
......
}
при замыкании ножки INT0 и INT1 на землю код в соответствующих функциях прерывания работает как надо, перевожу контроллер в режим сна
Код:
MCUCR |= 1 << SE | 1 << SM1;
#asm("SLEEP")
по даташиту если перевести контролер в режим Power-down (SM0=0,SM1=1,SM2=0) то он должен пробуждаться от "INT1/ INT0" и "TWIAddress Match", но от INT1/ INT0 не пробуждается, почему?
з.ы.: контролер atmega8a