Gehe ich doch noch heute Abend mit einem kleinem Erfolgserlebnis zu Bett *freu* =)
Wenn auch einwenig kompliziert geschrieben der Code, aber er funktioniert. 
Der nächste Schritt wird sein, meinen Infrarot-Empfänger auszuwerten. Aber damit mache ich morgen weiter.
Vielen Dank an euch drei !!!
Ps.: Auf den Teil mit der Störungsempfindlichkeit ... darauf wäre ich ja nie gekommen. 
Code:
#define F_CPU 20000000UL
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
volatile uint8_t flag;
int main(){
// #### IO`s etc. konfigurieren....
DDRB |= (1<<PB0); // LED Output schalten...
DDRA &= ~( (1<<PA0) | (1<<PA1) | (1<<PA2) | (1<<PA3) | (1<<PA4) | (1<<PA5) | (1<<PA6) | (1<<PA7) );
PORTA |= (1<<PA0) | (1<<PA1) | (1<<PA2) | (1<<PA3) | (1<<PA4) | (1<<PA5) | (1<<PA6) | (1<<PA7);
flag = 0;
EICRA |= (1<<ISC00) | (0<<ISC01); // Modus: "Any edge of INT0 generates asynchronously an interrupt request"
EIMSK |= (1<<INT0);
PCMSK0 |= (1<<PCINT7); // PA7 als Interrupt-Pin....
PCICR |= (1<<PCIE0);
// ISR`s freigeben...
sei();
while(1){
// Endlosschleife...
if(flag==1){
_delay_ms(3000);
PORTB &= (0<<PB0); // LED AUS...
flag=0;
}
}
}
ISR( PCINT0_vect ){
flag = 1;
PORTB |= (1<<PB0); // LED AN...
}
Lesezeichen