; Taster auslesen und auf einem anderen Port ausgeben ; einfachere Variante ; ; Achim Walther, www.voidpointer.de, 20.11.2004 .include "m8def.inc" ; definitions for Mega8 .def temp = R16 init: ldi temp, 0xFF out DDRC, temp ;Port C durch Ausgabe von 0xFF ins ;Richtungsregister DDRC als Ausgang konfigurieren ldi temp, 0x00 out DDRD, temp ;Port D durch Ausgabe von 0x00 ins ;Richtungsregister DDRD als Eingang konfigurieren ldi temp, 0xFF out PORTC, temp ;PORTC auf 0xFF setzen -> alle LEDs aus loop: sbis PIND, 7 ;"skip if bit set", nächsten Befehl überspringen, ; wenn Taste nicht gedrückt, keine LED an cbi PORTC, 0 ;Bit 0 im IO-Register PORTB auf 0 setzen -> 1. LED an sbic PIND, 7 ; wenn Taste gedrückt nichts tun sbi PORTC, 0 ; LED aus ende: rjmp loop ;Endlosschleife