Hola a todos!!! soy nuevo en esto y en realidad no se si lo estoy haciendo bien pero quiero saber si me podrian ayudar...tengo que hacer un programa que me incremente un registro cada vez que se de la comparación de PR2=TMR2, sin embargo a pesar de haber habilitiado la interrupcion, nunca se produce, les pongo el programa para ver si me pueden ayudar.....gracias!!!
;-------------------------------
;
;-------------------------------
LIST P=16F877A
RADIX HEX
INCLUDE <P16F877.inc>
;-------------------------------
;
;-------------------------------
ORG 0x00
GOTO INICIO
ORG 0x05
;-------------------------------
;
;-------------------------------
TIEMPO EQU 0X20
;-------------------------------
;
;-------------------------------
INICIO
BANKSEL PIE1
BSF PIE1,TMR2IE
MOVLW b'11111111'
MOVWF TRISB
MOVLW b'00000000'
MOVWF TRISC
MOVLW b'00000111'
MOVWF PR2
BANKSEL T2CON
MOVLW b'01111011'
MOVWF T2CON
MOVLW b'10000000'
MOVWF INTCON
CLRF PORTC
CLRF TIEMPO
;-------------------------------
;
;-------------------------------
TEMPORIZADOR
BTFSC PORTB,0
GOTO APAGAR
BTFSC PORTB,1
GOTO ENCENDER
GOTO TEMPORIZADOR
ANADIR
MOVLW b'00000111'
ADDWF PORTC
GOTO ENCENDER
ENCENDER
BSF T2CON,2
CONTINUAR
BTFSC PORTB,0
GOTO APAGAR
BTFSC PIR1,TMR2IF
GOTO SUMAR
GOTO CONTINUAR
SUMAR
MOVLW b'00001001'
SUBWF PORTC,0
BTFSC STATUS,DC
GOTO ANADIR
INCF PORTC
GOTO ENCENDER
APAGAR
BCF T2CON,2
BTFSC PORTB,1
GOTO ENCENDER
GOTO APAGAR
END