Hola a todos! es mi primer mensaje en este foro y de antemano les agradezco su ayuda!
Soy nuevo en el mundo de los pics, intento realizar un contador de rmp, se que el tema se ha tratado mucho en el foro y he leido bastantes mensajes sobre esto antes de iniciar el tema, he leido en otros mensajes el procedimiento básico para este proyecto, quiero es contar los pulsos con TMR0, usar una rutina de retardo, hacer algunas cuentas y asi obtener el valor de rpm y mostrar por 4 displays 7 segmentos, hasta aqui todo bien, he ido armando el programa poco a poco, pero tengo problemas para que ande, las rutinas de multiplicar los registros, convertir a BCD, mostrar por los displays, etc, andan muy bien, lo he simulado en MPLAB y PROTEUS y funcionan, pero para trabajar con el TMR0 tengo dificultades, les muestro lo que he hecho hasta ahora, configuro en modo contador, preescaler al Watchdog, contador por flanco ascendente, pero cuando lo simulo me muestra 0000 en los displays! no se exactamente donde está el error en este caso, agradezco su ayuda, les muestro el código donde intento configurar el TMR0.
main
bsf STATUS,RP0
clrf TRISB
movlw b'11110000'
movwf TRISA
movlw b'00101000'
movwf OPTION_REG
bcf STATUS,RP0
inicio
clrf TMR0
call Retardo_50ms
movf TMR0,0
movwf mulplr
movlw .100
movwf mulcnd
configuro el puerto B como salida para enviar el valor a los displays, utilizo los 4 bits menos significativos del puerto A para seleccionar el display cuando hago la multiplexación, y RA4 como entrada para contar los pulsos! no se si sea correcto de este modo pero he intentado otra configuración y el error persiste, mmulplr y mulcnd son los registros donde almaceno los valores a multiplicar, por ejemplo si midiese los pulsos durante un segundo, enviaria el valor del TMR0 a mulplr y 60 a mulcnd, el retardo de 50ms es referencial por asi decirlo, tampoco se en realidad durante cuanto tiempo deberia medir los pulsos, tengo pensado que sea un contador de rpm para automovil! he probado con diferentes retardos pero al simularlo me sigue apareciendo 0000, creo que mi problema es la configuración del TMR0! agradezco su ayuda!