Vielen Dank, jetzt weis ich das auch

Jetzt habe ich aber wieder mal eine Frage:
Mit folgendem Code möchte ich bei Tastendruck (Pina.0) eine Led an Portc.0 toggeln.
Allerdings wird diese nicht getoggelt, sondern sie leuchtet nur solange, solange ich den Taster drücke.
Hier der Code:
Code:
$regfile = "m32def.dat"
$crystal = 16000000
$framesize = 30
$hwstack = 30
$swstack = 30

$asm

.def Null = R20
.def Eins = R21
.def K = R22
.def I = R23
.def J = R24

ldi null, &b00000000
ldi eins, &b11111111

ldi r16, &b11111111
Out Ddrc , R16

ldi r16, &b00000000
Out Ddra , R16

ldi r16, &b11111111
Out Portc , R16

ldi r16, &b11111111
Out Porta , R16


Lop:

sbis pina , 0
rjmp taster_an

rjmp lop


Taster_an:
ldi r16, &b00000000
sbis pinc , 0
ldi r16, &b11111111
cpi r16 , &b00000000
breq led_ein
sbi portc,0
rjmp ende_taster_an
Led_ein:
cbi portc,0
Ende_taster_an:
'rcall wait
ret

Wait:
    ldi k,10
loop_k:
    nop
    nop
    dec k
    cpi k,0xFF
    brne loop_k
    dec j
    cpi j,0xFF
    brne Wait
    dec i
    cpi i,0xFF
    brne Wait
    ret

$end Asm

End
Warum wird die Led immer wieder ausgeschaltet (also 0 = ein und 1 = aus)??

Gruß
Chris