call en Interrupción externa

#1
Estoy trabajando con la interrupción del RB0. La interrupción se activa y realiza la activación de una salida pero luego de esto realizo un CALL, al cual no le hace caso y se va directamente al programa principal como que se salteara el call y se fuera al retfie de frente...
Esta de mas decir que se pueden hacer calls en una interrupción verdad?

ORG 0x004 ; vector de interrupciones
bsf PORTB,RB4 ; Encender RB4
call TIEMPO_20_MS ; Espera a que se estabilice el nivel de tensión.
ESPERA btfss PORTB,RB0 ; Espera que suelte pulsador
goto ESPERA
call TIEMPO_10_S
bcf INTCON,INTF ; Limpia flag de reconocimiento (INTF).
retfie ; Retorna y rehabilita las interrupciones (GIE=1).

Espero sus comentarios....
Gracias.



Corrección al mensaje anterior.... disculpen...
No es que no haga nada el micro, sino que demora aproximadamente 12 segundos en salir de la interrupción cuando solo se le pide que tenga un delay de 1 segundo.


ORG 0x004 ; vector de interrupciones
bsf PORTB,RB4 ; Encender RB4
call TIEMPO_20_MS ; Espera a que se estabilice el nivel de tensión.
ESPERA btfss PORTB,RB0 ; Espera que suelte pulsador
goto ESPERA
call TIEMPO_1_S
bcf INTCON,INTF ; Limpia flag de reconocimiento (INTF).
retfie ; Retorna y rehabilita las interrupciones (GIE=1).
 
Última edición:
Arriba