Hallo Zusammen! Ich habe ein Programm von einer früheren Aufgabe übernommen (ohne Beschreibung). Nun funktionieren die Interrupts nicht! Der Code: ______________________________________________________________________ _ list p=16F684 #include <p16F684.inc> RADIX DEC errorlevel -302 errorlevel -306 __CONFIG B'11001111010100' org 0x00 nop goto Init org 0x04 goto Interrupt Init call InitWatchdocOff call InitOszillator call InitPort call InitTMR call InitTMR2 call InitInterrupt goto Main ;Teilprogramm von Init InitWatchdocOff clrwdt movlw b'00001000' banksel WDTCON movwf WDTCON banksel PORTA return ;Teilprogramm von Init InitOszillator bsf STATUS,RP0 movlw b'01101000' movwf OSCCON movlw b'00000000' movwf OSCTUNE bcf STATUS,RP0 return ;Teilprogramm von Init InitPort movlw b'00000000' movwf PORTA movwf PORTC movlw b'00011101' movwf ADCON0 movlw b'00000111' movwf CMCON0 bsf STATUS,RP0 movlw b'10000000' movwf ANSEL movlw b'00010000' movwf ADCON1 movlw b'11111100' movwf TRISA movlw b'11001011' movwf TRISC movlw b'00100000' movwf IOCA bcf STATUS,RP0 return ;Teilprogramm von Init InitTMR movlw b'00000000' movwf T1CON bsf PIE1,0 movlw b'11111111' addwf TMR1IE,1 movlw TMR1H_V movwf TMR1H movlw TMR1L_V movwf TMR1L bsf T1CON,TMR1ON bcf PIR1,TMR1IF return ;Teilprogramm von Init InitTMR2 movlw b'00000000' movwf T2CON movlw d'255' movwf PR2 bsf PIE1,1 bcf PIR1,1 return ;Teilprogramm von Init InitInterrupt bcf INTCON,1 bsf INTCON,4 bsf INTCON,6 bsf INTCON,7 return ;Interruptsubroutine Interrupt btfsc INTCON,1 goto EXINT btfsc INTCON,RAIF Interrupt1 btfsc PIR1,TMR1IF call TMR1ir btfsc PIR1,1 call TMR2ir goto EXIT EXINT bsf PORTC,5 bcf INTCON,1 goto EXIT TMR1ir bcf T1CON,TMR1ON EndTMR movlw TMR1H_V movwf TMR1H movlw TMR1L_V movwf TMR1L bsf T1CON,TMR1ON bcf PIR1,TMR1IF return TMR2ir bcf T2CON,2 bsf PORTC,5 movlw d'255' movwf PR2 bsf T2CON,2 bcf PIR1,1 return Hallir movf PORTA,w movwf SavePortA bcf INTCON,RAIF return EXIT retfie ;Hauptprogramm Main nop btfss PORTC,0 goto links bsf PORTC,4 bsf PORTC,5 goto End1 links btfss PORTC,1 goto MotDis bcf PORTC,4 goto End1 End1 nop goto Main end ______________________________________________________________________ _ So wie ich das sehe sind die Interrupts der beiden Timers auch konfiguriert/Aktiv!?!! Aber ich komme gar nie in die Interrupt-Routienen! Vielen Dank für die Hilfe und Gruess! M.B
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.