Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
configuro el timer0 para 16bits, y el solo, una vez está inicializado, TMR0 register se incrementa cada ciclo de instrucción, hasta ahí bien, se va incrementando poco a poco el TMR0L que es la parte baja de TMR0, pero cuando llega a FF y le toca el paso a TMR0H éste no se incrementa, es decir, TMR0 pasa de por ejemplo:
TMR0 EEFF
EN EL SIGUIENTE CICLO DE INSTRUCCIÓN A:
TMR0 EE00
y debería ser:
TMR0 EF00
lo que viene a ser que TMR0H no se incrementa y TMR0L si, y ya no se como hacerlo, porque así nunca me llega a desbordar TMR0IF, ¿alguna idea de porque puede ser?
Ya he solucionado el problema!!!! lo que me pasaba es que le metía un valor al timer0, me desbordaba la primera vez pero luego seguía contando el timer sin volver a inicializarlo, y se tenía que recorrer los 16 bits con el prescaler de 256 enteritos, y no me contaba el medio segundo que kería, vamos, que me faltaba reinicializar el timer cada vez que detectaba el TMR0IF
Lo de que no me aumentaba el TMR0H era porque en watch veía el TMR0, y ahí no se actualiza si no realizas una lectura de TMR0L, pero hay otro registro el TMR0_internal que ese si que se ve como aumenta el TMR0, asi que muchas gracias por vuestra ayuda y problema solucionado
