Witam mam problem z przerwaniem od INT0. Chciałbym aby przy wykryciu przerwania inkrementowała się zmienna a potem wysyłana na port. Przerwanie jest generowane poprzez przycisk zwierany do masy. Kod wygląda następująco:
Ktoś ma jakiś pomysł czemu to nie działa?
#define F_CPU 4000000UL //wew oscylator
#include <avr/io.h>
#include <stdlib.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include "LCD.H"
char a;
ISR(INT0_vect)
{
a++;
};
void init(void)
{
sei();
MCUCR = ((1<<ISC01)|(0<<ISC00));
GICR = (1<<INT0);
a=1;
DDRA=0xff;
PORTA=0x00;
DDRD=0x00;
PORTA=0xff;
}
void main(void)
{
init();
for(;;)
{
PORTA=a;
}
}
Ktoś ma jakiś pomysł czemu to nie działa?