Multiplexen mit Decoder und Taster zum Einstellen der Geschwindigkeit An PB0 und PB1 sind Steuereingänge vom SN54LSI39J (1 von 4 Decoder) An PD0 und PD1 sind Taster mit Pulldown Widerständen Ziel: Lauflicht mit 4 LEDs und nur 2 Portpins benutzen Einstellen der Lauflichtgeschwindigkeit */ #include #include #include #ifndef F_CPU #warning "F_CPU war noch nicht deklariert, wird nun mit 1000000 nachgeholt!" #define F_CPU #endif int geschw=100; ISR(INT0_vect)//Interrupt Service Routine INT0 { geschw+=50; PORTB|=0x04; } ISR(INT1_vect)//Interrupt Service Routine INT1 { if(geschw>=0) geschw-=50; PORTB&=0xFB; } int main(void) { DDRB|=0x03; //PB0 und PB1 Ausgang DDRD&=0xFC; //PD0 und PD1 Eingang DDRB|=0x04; //PB2 Ausgang sei(); //Global Interrupt Enable GICR=0xC0; MCUCR=0x0F; //Interrupt INT1 INT2 rising edge while(1) { PORTB&=~((1<