http://www.sprut.de/electronic/pic/int/int.htm
Da steht es super drin, wie ein Interrupt abläuft
.
Ja, schon murphy hat gesagt, "All non trivial programms have at least one bug" und "The number of error in a programm is always greater than 0".
Hum, hast du eigentlich deine Ausgabe-Funktion getestet??? Also dass er die richtigen Zeichen an die richtige Schreibt? Weil wenn nicht, dann tausch mal dein Main zu diesem aus:
Code:
Main:
call Init
call InitLCD
movlw 0x01
movwf stdz
movlw 0x02
movwf stde
movlw 0x03
movwf minz
movlw 0x04
movwf mine
movlw 0x05
movwf sekz
movlw 0x06
movwf seke
; damit müsste die Ausgabe jetzt lauten 12:34:56
WriteLcd
bcf UPDLCD
call printseke
call printsekz
call printmine
call printminz
call printstde
call printstdz
movlw D'10'
movwf loops
call WAIT
goto WriteLcd
Da der Timer nun nicht aktiviert worden ist, müsste die Ausgabe statisch gleiben. Wenn sie das nicht ist, ist der Fehler irgendwo in deinen print-Funktionen zu suchen.
MfG
Mobius
Lesezeichen