Programación Específica > Microcontroladores
Realizacion De Un Frecuencimetro
jr.:
Hola a todos necesito una pequeña ayuda sobre un trabajo que estoy realizando en un pic 16f84,estoy haciendo un frecuencimetro siendo el rango a medir de 0 a 255 Hz. que tiene que primero contrar un segundo eventos externos por la patilla RA0 y almacenar una vez ranscurrido ese segundo el valor en binario en el TMR0que es el valor de la frecuencia.
Una vez tenemos ese numero tenemos que mostrarlo en un displayde forma que cuando se produce un nivel alto en RA0 se muestren las centenas , en RA1 las decenas y en RA2 las unidades.El valor fijo se mantiene hasta que se produce un.
valor alto en RA3 momento en que tengo que borrar el display y se prduce una nueva medida.Eso es lo que hace el trabajo y tengo todo hecho menos la conversión de binario a numeros digitales que no se como realiza por eso agradeceria cualquier ayuda.
Gracias.
lmarte:
No tengo un código, pero la idea seria algo asi:
Utilizas tres registros, centenas, decenas y unidades (tu solo llegas hasta 255).
- restas tu numero (en binario) con 100 (en binario), si el resultado es negativo entonces cargas centenas con cero y pasas a analizar las decenas.
- si es positivo el resultado lo cargas en tu número e incrementas centenas en 1, asi hasta que la resta te dé negativo. Centenas podrá cargarse máx con 2(0010).
- Cuando llegues a las decenas haces lo mismo pero esta vez restas con 10. Decenas se te podrá cargar máximo con 9 (1001).
- Luego unidades, mismo procedimiento.
Cuando tengas las tres variables las puedes enviar convirtiendolas en ASCII sumandole 30H (!creo¡ revisa este valor). :comp:
Espero haber sido claro y ayudarte.
Por cierto revisa bien la instrucción subwf y sublw haciendo un programita y lo simulas que te reste dos datos y revisas el carry, creo q algo aparece mal en el datasheet.
Cuentas como te va
Un saludo
Setha:
Tengo un libro con un programa muy parecido. Te lo paso.
jr.:
Gracias por vuestras respuestas, lo probare y ya os contare, aunque tardaré un poco porque estoy liado con otro proyecto.
Vuestra pagina es muy buena y espero ayudar yo tambien a los demas en lo que pueda.
jr.:
Imarte todavia no he probado el codigo pero he podido hacer esa parte y quiero darte las gracias porque esa era la ayuda que me faltaba.
Gracias y ya pondre el programa entero cuando lo complete.
Un saludo
Navegación
[#] Página Siguiente
Ir a la versión completa