main: ldi r16,lo8(RAMEND)
out SPL,r16
ldi r16,hi8(RAMEND)
out SPH,r16
;Hier Init-Code eintragen
;-----------------------------------------------------------------------
-
cbi DDRB,0 ;b0 auf eingang
sbi PORTB,0 ;pullup widerstand
sbi DDRB,1 ;b1 auf ausgang
sbi DDRC,0 ;c0 auf ausgang(status led)
;-----------------------------------------------------------------------
-
mainloop: wdr
sbi PORTC,0
sbic PINB,0 ;taste auswerten
rcall LEDOFF
rcall LEDON
;-----------------------------------------------------------------------
-
LEDON: rcall ZEIT2S
sbi PORTB,1 ;zeit-led einschalten
rcall ZEIT10S
rjmp mainloop
;rcall LEDOFF
ret
LEDOFF: cbi PORTB,1 ;zeit-led ausschalten
rjmp mainloop
ret
;-----------------------------------------------------------------------
-
ZEIT10S:
; delaying 36863838 cycles:
ldi R17,246
WGLOOP0: ldi R18,222
WGLOOP1: ldi R19,224
WGLOOP2: dec R19
brne WGLOOP2
dec R18
brne WGLOOP1
dec R17
brne WGLOOP0
; -----------------------------
; delaying 162 cycles:
ldi R17,54
WGLOOP3: dec R17
sbic PINB,0
rcall LEDOFF
brne WGLOOP3
ret
; =============================
ZEIT2S:
; delaying 7372782 cycles:
ldi R17, 54
WGLOOP4: ldi R18, 185
WGLOOP5: ldi R19, 245
WGLOOP6: dec R19
brne WGLOOP6
dec R18
brne WGLOOP5
dec R17
brne WGLOOP4
; -----------------------------
; delaying 18 cycles:
ldi R17, 6
WGLOOP7: dec R17
brne WGLOOP7
ret
; =============================