Estoy tratando de usar TMR1
para contar los desbordamientos de TMR0
. Para hacer esto, estoy usando TMR1
con la puerta habilitada, y estoy usando TMR0
overflow como fuente de la puerta.
Al usar MPLAB SIM, puedo ver que TMR0
está contando y desbordando. El TMROIF
bit en INTCON
se está configurando correctamente.
TMR1
cuenta correctamente sin la puerta habilitada, y se detiene cuando habilito el control de la puerta, hasta ahora todo bien.
Sin embargo, el desbordamiento de TMR0
no parece estar activando la puerta. El T1GVAL
bit de T1GCON
nunca se establece.
Estoy ejecutando TMR1
en Fosc y tengo la puerta ejecutando no en modo de conmutación o modo de pulso único ...
TMR0
se está ejecutando en instruction clock / 256
, aunque supongo que esto no importa ...
Aquí están mis bits de configuración:
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_OFF & _IESO_OFF & _FCMEN_OFF</code>
__CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_19 & _LVP_OFF
y aquí están las líneas relevantes donde configuro TMR1
banksel T1CON
movlw b'01000001' ; source = Fosc, prescale 1:1, LP osc - no, Timer on
movwf T1CON
banksel T1GCON
movlw b'11000001' ; gate enabled, active high, toggle no, pulse mode no, source TMR0
movwf T1GCON