Cronometro digital

Quiero diseñar un cronometro por medio del pic 18f452 ya que necesito anexarlo a otro proyecto,,, me gustaría saber si lo puedo hacer,,, y de que forma,,,, ¿o seria mejor diseñarlo por medio de contadores? '

1 respuesta

Respuesta
1
Totalmente con un PIC. Hacerlo con contadores requiere más esfuerzo, espacio, dinero, etc...
El micro que propones esta bien, quizás hasta sea demasiado potente.
¿Necesitas qué muestre solo segundos? ¿O también minutos y horas? O sea... ¿cuánto tiene que contar? Si son solo segundos, quizás puedas usar dígitos tipo led de 7 segmentos. Si necesitas contar mucho (horas, minutos, segundos, milisegundos...) lo mejor va ser que utilices un display LCD alfanumérico de 2x16 caracteres. Son relativamente baratos, se consiguen muy fácil y consumen poca energía.
El programa deberá contar unidades de tiempo al ritmo de una interrupción de hard que programaras en función de la velocidad de clock que utilices (ya sea el propio del micro o externo). Así, sumaras unidades a las variables segundos, minutos, etc... según necesidad.
También tendrás que reservar 3 entradas para el pulsador de inicio, parada y reset.
En la página de micro hay varios ejemplos de trabajo con interrupciones y displays LCD.
Si tienes más dudas, me avisas.
Muchas gracias por responderme, lo que pasa es que necesito hacer un cronometro donde pueda visualizar minutos y segundos este cronometro tiene que tener el 10 cm de alto el dígito, entonces pues he cotizado los display 7 segmentos y las matrices de led, y pues lo más económico son las matrices de led`s ¿la programación variaría?
Necesito que este cronometro sea de forma descendente y que tenga varias opciones de tiempo es decir que yo pueda escoger que tiempo empiece a descender.. ¿cómo podría empezar?
Muchas gracias sabadaneri
Bien, no se exactamente como funcionan la matrices de LED pero me imagino que será similar a un display 7 segmentos común más un modulo de potencia para activarlo.
La programación varia bastante, ya que en el caso del LCD tu envías los caracteres que quieres mostrar y el controlador del LCD se encarga de gestionar la actualización de la pantalla.
En este caso vas a tener 4 dígitos de 7 segmentos cada uno. Por lo tanto, lo que harás es utilizar 7 salidas para activar los dígitos más 4 salidas para seleccionar el display. Deberás programas una rutina que realize el barrido, actualizando uno a uno los display, para dar el efecto de que están funcionando todos a la vez. La rutina, puede estar gobernada por la misma interrupción del timer que cuenta tiempo. Esta rutina colocará el dato presente en las variables de tiempo en cada dígito (activando la salida correspondiente), a una velocidad tal que no genere parpadeo.
Si por el contrario, la matriz incluye alguna función de lacht, no necesitaras actualizar constantemente, y solo envías el dígito una vez cuando se produzca un cambio de valor y de manera asíncrona (o sea, sin necesidad de seguir a la interrupción).
En la red tiene que haber seguro ejemplos que utilicen display 7 segmentos.
El tiempo de descenso puede ser fijo, se carga en una constante, o bien tienes que generar otra rutina que te permita introducir el dato mediante los pulsadores (o combinaciones de ellos). Podrías disparar esta rutina al mantener pulsador el reset por más de 3 segundos, luego cambiar el numero pulsando las teclas de inicio-parada, y confirmar el nuevo valor presionando nuevamente el reset.
No se que experiencia tienes en programación. Si es poca, te recomiendo que comiences practicando con los ejemplos que se incluyen con los entornos de desarrollo de Microchip. Luego, vas incorporando las porciones de código que te sirven a tu proyecto y programas lo que falta.
Cualquier duda me avisas.
Sino tienes más consultas te agradecería mucho que puntúes y cierres la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas