Code:
.def temp1=r16
.def temp2=r17
.def Sekunden=r18
.def Minuten=r19
.def Stunden=r20
rjmp Start ;Sprung zum Programmanfang
reti ;Interruptvektortabelle
reti
rjmp timer2_overflow ;Timer Overflow Handler
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
reti
Setup:
ldi temp1, 0b00011110
out DDRC, temp1
ldi temp1, 0b01111111
out DDRD, temp1
in temp1,ASSR
ori temp1,0b00001000
out ASSR,temp1
ret
Start:
ldi temp1, LOW(RAMEND)
out SPL, temp1
ldi temp1, HIGH(RAMEND)
out SPH, temp1
rcall Setup
ldi temp1,0b00000101 ;(32768/128)/256=1 Vorteiler
out TCCR2,temp1
ldi temp1,0b01000000
out TIMSK,temp1
sei
LOOP:
timer2_overflow:
push temp2
inc Sekunden
cpi Sekunden,60
brne Ausgabe
clr Sekunden
inc Minuten
cpi Minuten,60
brne Ausgabe
clr Minuten
inc Stunden
cpi Stunden,24
brne Ausgabe
clr Stunden
Ausgabe:
;ldi temp1, 0b11111111
;out portd, temp1
;com temp1
;reti
mov temp2,Sekunden
lsr temp2
brcs AZE
rcall a
rcall A4
rjmp end_isr
AZE: rcall a
rcall A3
end_isr:
pop temp2
reti
rjmp LOOP
a: ldi temp1, 0b10000001 ;Zeige Ziffer 0
out PortD, temp1
ret
b: ldi temp1, 0b11001111 ;Zeige Ziffer 1
out PortD, temp1
ret
c: ldi temp1, 0b10010010 ;Zeige Ziffer 2
out PortD, temp1
ret
d: ldi temp1, 0b10000110 ;Zeige Ziffer 3
out PortD, temp1
ret
e: ldi temp1, 0b11001100 ;Zeige Ziffer 4
out PortD, temp1
ret
f: ldi temp1, 0b11000100 ;Zeige Ziffer 5
out PortD, temp1
ret
g: ldi temp1, 0b11000000 ;Zeige Ziffer 6
out PortD, temp1
ret
h: ldi temp1, 0b10001111 ;Zeige Ziffer 7
out PortD, temp1
ret
i: ldi temp1, 0b10000000 ;Zeige Ziffer 8
out PortD, temp1
ret
j: ldi temp1, 0b10000100 ;Zeige Ziffer 9
out PortD, temp1
ret
A1: ldi temp1, 0b00000010 ;Anzeige 1 an
out PortC, temp1
ret
A2: ldi temp1, 0b00000100 ;Anzeige 2 an
out PortC, temp1
ret
A3: ldi temp1, 0b00001000 ;Anzeige 3 an
out PortC, temp1
ret
A4: ldi temp1, 0b00010000 ;Anzeige 4 an
out PortC, temp1
ret
delete1:
ldi temp1, 0b11111111 ;Segmente loeschen
out PortD, temp1
ret
delete2:
ldi temp1, 0b00000000 ;Anzeige loeschen
out PortC, temp1
ret
.include "m8def.inc"
soweit bin ich jetzt.... was is falsch oder fehlt noch?????
Lesezeichen