Buenas, como dice el titulo es un ejercicio el cual cuenta los pulsos de entrada de la pata a4 a un octavo , osea por cada 8 pulso suma uno en el timer0. cuando se desborde el timer0 se supone que manda la interrupcion y suma en uno un punto en la memoria que e denominado "salida" el cual reemplazara el puerto B en modo de salida para mostrarlos en led en la salida etc etc .... la cuestion es que lo simule en mlap a traves de "stimulus" pero cuando llegua el desbordamiento no se va al vector de interrupcion no se por que . si me podriar ayudar por favor . aqui le muestro el codigo que escribi y tambien se los adjuntos (todos los archivos que me genero el mlab y el archivo de stimulus , este archivo tiene la diferencia de que el preescaler esta en 1:1 para poder simularlo mas rapido por lo demas esta igual )
****************************************************************************************************************
LIST P=16F84A
#include <P16F84A.inc>
;
__CONFIG _CP_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC
;---------------------------------------------------------------
ORG 0X00
GOTO INICIO
ORG 0X04
GOTO INTERRUP
;---------------------------------------------------------------
BANCO00 MACRO
BCF STATUS,RP0
ENDM
BANCO01 MACRO
BSF STATUS,RP0
ENDM
SALIDA EQU 0X15
;---------------------------------------------------------------
INICIO
CLRW
BANKSEL TRISB ; PONEMOS EL BANCO B EN MODO DE SALIDA
CLRF PORTB
BSF TRISA,0X04 ; SELECIONAMOS AL A4 COMO ENTRADA
CLRW
MOVLW 0XB0 ; PREESCALER 100 (32 PULSO PARA CONTAR UNO LO KE KIERE DECIR QUE QUE CUANDO SE DESBORDE SERA POR UN MULTIPLO DE 8 ...( 256/8 =32 ) POR LO QUE CADA DESBORDAMIENTO YA HABRA HECHO UN EFECTO DE 2 AL CUBO))
MOVWF OPTION_REG ; HABILITAMOS LAS INTERRUPCIONES GLOBALES ,ACTIVAMOS A A4 QUE DEJE ENTRAR UN PULSO EXTERNO PARA EL CONTEO DEL TIMER0 Y QUE CUENTE DE HIGH -LOW Y AJUSTAMOS EL PREESCALER EN MULTIPLO DE 8 HACIENDO EL EFECTO DE 2^3= 8 EVITANDO ASI LA NECESITAD DE MULTIPLICAR LUEGO
BANKSEL PORTA
CLRF SALIDA
MOSTRAR CLRF PORTB
CLRW
MOVFW SALIDA
MOVWF PORTB ; DEBIDO A QUE YA EN EL PREESCALER YA MULTIPLICAMOS POR 8 (8 ES EL RESULTADO DE 2 AL CUBO) NO NECESITAMOS HACER MODIFICACIONES A LA INFORMACION
GOTO MOSTRAR
INTERRUP
BCF STATUS,0X04 ; QUITAMOS EL BIT DE INTERRUPCION DEL STATUS PARA PODER SEGUIR
CLRW ; PONEMOS 1 EN W Y SE LO SUMAMOS A SALIDA COMO EL PREESCALER YA HIZO LA CONVERSION DEL LA CUENTA NO HACE HACER OTROS CALCULOS NI PROCEDIMIENTOS.
MOVLW 0X01
ADDWF SALIDA,1
ENDI
END
******************************************************************************************************************
gracias de antemano