TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: hector quiroz en 05 de Julio de 2008, 00:35:51
-
hola amigos necesito ayuda con el programa de un frecuencimetro digital con 4 displays de 7segmentos
bsf status,5 ; Seleccionamos el banco 1 de registros.
movlw b'10000' ; activamos de entrada la RA4 y todos los demas RA de salida
movwf trisa ; movemos lo anterior al trisa
bsf option_reg,5 ; activamos el TOCS como contador
bcf option_reg,4 ; activamos el TOSE para ke mida flanco de subida
clrf trisb ; Ponemos a 0 el registro TRISB.Puerta B como salidas
bcf status,5 ; Seleccionamos el banco 0 de registros.
ahora mi duda es como hacer pa contar lso pulsos q entran al tocki durante un segundo y mostarlo en 4 display... y la frec max q podre mostrar sera 9999 hz??
hasta q numero cuenta el tocki y el resulta lo da en binario??
perdon pero toy recien aprenidiendo a programar y ya me mandaron este proyecto para llevarlo listo en 2 semanas mas...
si alguien me puede ayudar a programar le doy mi correo edgebo@hotmail.com agreguen al msn
lo agradecere mucho
-
Lo que podrias hacer para medir la frecuencia, es usar la interrupcion del registro tmr0 como contador:
1- Configuras el tmr0 como contador, podes leer esto si no sabes como http://members.fortunecity.es/electronico/tutoriales/tutopic16f84/p9.html
2- En la rutina principal, haces una rutina que cuente el tiempo (en segundos o lo que sea)
3- El contador lanza una interrupcion cuando desborda (cuando conto 256 pulsos)
4- Para calcular la frecuencia dividimos 256 por la cantidad de segundos q contamos en la rutina principal
Y eso es todo. Como es muy complicado dividir en ensamblador, lo que podrias hacer es revisar el valor del contador cada un segundo y resetearlo, entonces no tendrias q dividir.
Saludos y suerte!
PD: por este metodo podrias medir frecuencias mayores que la del cristal que uses. Aunq tiene su limite, habria q calcularlo