@A.Hoffmann:

Ich habe mal ne Frage:
Was bringt folgender Code:

Code:
;*********************************************************
;*                  Interrupt Routine für Timer 0        *
;*********************************************************
delay:      
         push   ZH
         push   ZL
         push   temp2
         push   temp
         in      temp,   SREG
         push   temp         ; sichern
         lds      temp,   timer_6   ; Milisekunenden
         inc      temp         ; Zähler
         sts      timer_6,   temp ; + 1
         adiw   r25:r24,   1   ; Counter + 1
         ldi      temp,       0xE8 ;0xE8   ; 0x03E8 = 1000
         ldi      temp2,      0xFF ;0x03
         cp      r24,   temp   ; Counter Low / 16 Bit compare
         cpc      r25,   temp2   ; Counter High
         brne   next_step      ; noch keine Sekunde vergangen
         lds      temp,   timer_1   ; erhöhe die Sekunden Zähler um 1
         inc      temp
         sts      timer_1,      temp
         ldi      r24,   0
         ldi      r25,   0

next_step:
         ldi      temp,   131      ; Counter Register
         out      TCNT0,   temp   ; neu Vorbelegen                     
         pop      temp         ; Register
         out      SREG,   temp
         pop      temp
         pop      temp2
         pop      ZL
         pop      ZH            ; wieder herstellen
         reti