бьюсь над непонятной штукой! есть простой код c прерыванием
- Код: Выделить всё • Развернуть
...
unsigned int int1A = 0;
...
ISR(INT1_vect)
{
int1A++;
}
void INTinit()
{
MCUCR = (1<<ISC10) | (1<<ISC11) | (1<<ISC01) | (1<<ISC00);
GICR = (1<<INT1) | (1<<INT0); //| (0<<INTF1) | (0<<INTF0)
}
int main(void)
{
INTinit();
DDRD=0b11110011;
PORTD=0x00;
sei();
//int1A=0x00; если указать то все нормально.
lcd_init();
...
while(1){
...
lcd_goto(2,6);
lcd_itostr(int1A);
_delay_ms(100);
}
}
при запуске MK (в Proteus 7) int1A=1 то есть срабатывает прерывание при инициализации, физически там нет возрастающего сигнала...
Кто нибудь сталкивался с такой проблемой?
PS. пытаюсь реализовать нечто подобное 1-write. такая ситуация сбивает счетчик таймера.