Hier ist eins:
Wenn Taster und LED gegen Masse angeschlossen sind, leuchtet die LED, wenn der Taster gedrückt ist.
Wenn die LED gegen Vcc geht, isses umgekehrt(also LED leuchtet, wenn der Taster offen ist.).
Wenn der Taster gegen Vcc geht, brauchst du noch 'nen Pulldown an PB0 und es ist auch umgekehrt.
Wenn beides gegen Vcc ist, leuchtet die LED bei gedrücktem Taster (und auch sonst immer, wenn du keinen Pulldown-Wiederstand am Taster hast.).
Code:
.include "m8def.inc"
start:
ldi r16, LOW(RAMEND) ; LOW-Byte der obersten RAM-Adresse
out SPL, r16
ldi r16, HIGH(RAMEND) ; HIGH-Byte der obersten RAM-Adresse
out SPH, r16
ldi r16,&b00000010
out DDRB,r16 ; PortB1 auf Ausgang, Rest auf Eingang
ldi portb,r16 ; LED an, Pullups aus
loop:
sbis portb,0
cbi portb,1
sbic portb,0
sbi portb,1
rjmp loop ; Endloschleife
Lesezeichen