max!
18.09.2010, 21:47
Hallo Forum!
Habe ein Problem mit dem INT0 Interrupt meines Atmega16. Wenn der Interrupt ausgelöst wird startet der Mikrocontroller von neu. INT1 arbeitet korrekt.
#include <avr/io.h>
#include <avr/interrupt.h>
ISR(INTO_vect)
{
PORTA=0xff;
}
ISR(INT1_vect)
{
PORTA=0xff;
}
int main(void)
{
DDRA=0xff;
DDRD=0x00;
PORTA=0x00;
//Interrupt einschalten
MCUCR = (1<<ISC00)|(1<<ISC01)|(1<<ISC10)|(1<<ISC11); //Flankenerkennung
GICR |= (1<<INT0)|(1<<INT1); //INT1 und INT0 aktiviert
sei();
while(1)
{}
return 0;
}
Hoffe jemand kann helfen.
Gruß Max
Habe ein Problem mit dem INT0 Interrupt meines Atmega16. Wenn der Interrupt ausgelöst wird startet der Mikrocontroller von neu. INT1 arbeitet korrekt.
#include <avr/io.h>
#include <avr/interrupt.h>
ISR(INTO_vect)
{
PORTA=0xff;
}
ISR(INT1_vect)
{
PORTA=0xff;
}
int main(void)
{
DDRA=0xff;
DDRD=0x00;
PORTA=0x00;
//Interrupt einschalten
MCUCR = (1<<ISC00)|(1<<ISC01)|(1<<ISC10)|(1<<ISC11); //Flankenerkennung
GICR |= (1<<INT0)|(1<<INT1); //INT1 und INT0 aktiviert
sei();
while(1)
{}
return 0;
}
Hoffe jemand kann helfen.
Gruß Max