Gast
#1811370
Hallo Leute, ich bräuchte etwas hilfe...
Könnte vielleicht jemand mal drüberschauen und mir sagen, wo der fehler
ist?
Was soll es machen:
Timer hochzählen und beim overflow meinen interruot ausführen.
Vielleicht habe ich etwas übersehen oder vergessen oder einfach nur
falsch verstanden...
in der initialisierung:
BSF STATUS, RP0 ; Bank 1 anwählen
MOVLW B'00000110' ; A/D Converter aus
MOVWF ADCON1
BSF PIE1,TMR1IE ; timer 1 interrupt enable
BCF STATUS, RP0 ; Bank 0 anwählen
;========= INTCON GIE,PIE enable========
MOVLW B'1100000'
MOVWF INTCON
movlw B'00110001' ; prescaler 1 zu 8, timer enable
movwf T1CON
und der interrupt selber:
BCF INTCON,7
BCF PIR1,TMR1IF
MOVWF W_TEMP
SWAPF STATUS,W
CLRF STATUS
MOVWF STATUS_TEMP
MOVF PCLATH, W
MOVWF PCLATH_TEMP
CLRF PCLATH
INCF timercounter
MOVFW timercounter
XORLW D'16'
SKPZ
b intende
CLRF PORTB
CLRF timercounter
intende MOVF PCLATH_TEMP, W
MOVWF PCLATH
SWAPF STATUS_TEMP,W
MOVWF STATUS
SWAPF W_TEMP,F
SWAPF W_TEMP,W
BSF INTCON,7
RETFIE
ich wäre sehr dankbar, wenn mir jemand helfen könnte...
Mit freundlichen Grüßen
euer rhamirez