;Hier der Code mit "Build"-Ergebnis, out of range bezieht sich aber doch eindeutig
;auf TIMSK0 - oder nicht??
;Gruß
;Ulli

.include"m328Pdef.inc"

;Übungen mit Timer und Interrupts
.def temp = r16


.org 0x0000
rjmp main ; Reset Handler
.org 0x0020
rjmp timer0_overflow ; Timer Overflow Handler

ldi temp,0x01
; out TIMSK0, temp
main:
ldi temp, HIGH(RAMEND) ;Stack initialisieren
out SPH, temp
ldi temp, LOW(RAMEND)
out SPL, temp

ldi temp,0xC1 ;clock wählen
out TCCR0B, temp

ldi temp, 0x20 ;beliebigen Wert in Timer0
out TCNT0, temp

; ldi temp,0x3B ;für Compare Match,
; out OCR0B, temp ;geht aber auch nicht, nur wenn TOIE manuell
;im Simulator gesetzt wird, krieg es aber im
;Programm nicht hin: TIMSK0 out of range
ldi temp,0x01
out TIMSK0,temp ;kann auch hier stehen, ist egal
sei

loop:
rjmp loop

timer0_overflow:
sbi portD,4 ;der Overflow Handler.
reti ;geht auch nicht mit Timer0 Comp (addr. 0x001E)
Copyright (C) 1995-2009 ATMEL Corporation

C:\Dokumente und Einstellungen\Besitzer\Desktop\Programme\timer3.as m(1): Including file 'C:\Programme\Atmel\AVR Tools\AvrAssembler2\Appnotes\m328Pdef.inc'
C:\Dokumente und Einstellungen\Besitzer\Desktop\Programme\timer3.as m(31): error: Operand 1 out of range: 0x6e

Assembly failed, 1 errors, 0 warnings