.include "m8515def.inc" ldi r16, 0xFF ; Erster Schritt für DDRB Bestimmung out DDRB, r16 ; Zweiter Schritt (PORTB als Ausgang definiert) ldi r16, 0x00 ; Erster Schritt für DDRD Bestimmung out DDRD, r16 ; Zweiter Schritt (PORTD als Eingang definiert) ldi r16, 0b11111111 ; alle LEDs aus out PORTB, r16 loop: in r16, PIND ; lade Tasterkombination in r16 cpi r16, 0b11111110 ; vergleiche Tasterkombination mit NUR Taster 0 gedrückt breq LED3_on ; Springe zu LED3_on cpi r16, 0b01111111 ; verlgeiche Tasterkombination mit NUR Taster 7 gedrückt breq LED4_on ; Springe zu LED4_on rjmp loop LED3_on: cbi PORTB, 3 ; LED3 ein in r16,PIND ; lade Tasterkombination in r16 cpi r16, 0b01111110 ; vergleich ob Taster 0 UND Taster 7 gedrückt breq LED34_on ; Springe zu LED34_on sbis PIND, 0 ; Überspringe nächsten Befehl wenn Taster 0 NICHT gedrückt rjmp LED3_on sbi PORTB, 3 ; LED3 aus rjmp loop LED4_on: cbi PORTB, 4 ; LED4 ein in r16, PIND ; lade Tasterkombination in r16 cpi r16, 0b01111110 ; vergleich ob Taster 0 UND Taster 7 gedrückt breq LED34_on ; Springe zu LED34_on sbis PIND, 7 ; Überspringe nächsten Befehl wenn Taster 7 NICHT gedrückt rjmp LED4_on sbi PORTB, 4 ; LED4 aus rjmp loop LED34_on: cbi PORTB, 3 ; LED3 ein cbi PORTB, 4 ; LED4 ein in r16, PIND ; lade Tasterkombination in r16 cpi r16, 0b01111110 ; vergleich ob Taster 0 UND Taster 7 gedrückt breq LED34_on ; Springe zu LED34_on sbi PORTB, 3 ; LED3 aus sbi PORTB, 4 ; LED4 aus rjmp loop