Вы находитесь на странице: 1из 3

Contador de 4 dgitos configurable

Dada la versatilidad de este circuito se lo puede colocar virtualmente en


cualquier desarrollo o equipo.

El contador funciona alrededor de un C de Microchip, el PIC16F84 cuyo


programa se encarga de llevar la cuenta de los impulsos recibidos as
como controlar los displays y dems aspectos que se vern a
continuacin...
Doble entrada de disparo:
Una con un pulsador hacia el positivo (para flancos de subida) y otra con
un pulsador hacia la masa (para flancos de bajada). En ambos casos la
seal puede ser TTL siempre que al circuito se lo conecte a 5V de
tensin. Gracias a que el sistema de anti rebote puede ser configurado la
entrada de disparo puede provenir tanto de un pulsador como de una
barrera infra roja de cruce peatonal como as tambin un censor de
efecto Hall o cualquier otro reproductor mecnico.
Anti rebote configurable:
Por medio del interruptor marcado como AR se puede seleccionar entre

un anti rebote por tiempo (esto quiere decir que entre pulsacin y
pulsacin el C esperar un tiempo previamente definido) un un anti
rebote por retorno a reposo de la lnea de disparo (cuando se produzca la
vuelta a su estado de reposo del pulsador o entrada). El caso del anti
rebote por tiempo suele ser el mas empleado cuando un contador es
disparado por un pulsador dado que ste presenta repiques mecnicos
indeseados. El tiempo de retardo se puede configurar por medio de los
interruptores J1 y J2 los cuales en combinacin permiten hasta cuatro
tiempos diferentes. En tanto, el anti rebote por retorno a reposo de la
lnea de disparo es mas apropiado cuando se lo conecta a barreras IR en
lneas industriales, censores mecnicos o levas (entre varios ejemplos).
Si se selecciona por tiempo y el pulsador permanece presionado el
conteo ir avanzando de uno en fondo y el tiempo de espera entre cada
avance depender de como estn los interruptores J1 y J2. Estando
ambos abiertos (sus lneas en estado alto) el tiempo es breve, mientras
que estando ambos cerrados (sus lneas a masa) el tiempo es el mas
largo posible. En tanto, si se configura para esperar la vuelta a reposo de
la lnea de disparo por mas que el pulsador permanezca presionado la
cuenta no avanzar sino hasta que se lo suelte. En este caso los
interruptores J1 y J2 no cumplen ninguna funcin.
Descripcin del circuito:
El C en su interior tiene cuatro variables (dig1, dig2, dig3 y dig4) en las
que va acumulando la cantidad de veces que se disparo el sistema. Este
disparo puede producirse tanto por un flanco ascendente en el pin 2
como por un flanco descendente en el pin 3. Debido a la limitada
cantidad de lneas de E/S de este chip se decidi implementar un
integrado decodificador de BCD a display de 7 segmentos a fin de formar
los nmeros sobre los mismos. Este integrado necesita solo cuatro lneas
de entrada para mostrar el nmero en los segmentos de un display. Por
medio de cuatro transistores actuando como llaves (corte/ saturacin) se
logra manejar cuatro dgitos independientes con tan solo ocho lneas o
cables. Al hacerse el encendido alternado de los dgitos a gran velocidad
para la vista pareciese que estn los cuatro encendidos al mismo tiempo,
cuando en verdad solo uno lo esta. Cada display permanece encendido
aproximadamente 3 milisegundos. Las resistencias de 10K ohms se
encargan de fijar estados lgicos definidos. Las de 4.7K ohms se
encargan de limitar tanto la corriente en las bases de los transistores
como as tambin la carga sobre los pines del puerto B del
microcontrolador. En tanto las de 150 ohms se encargan de limitar la
corriente en los displays. Para mayor brillo se puede probar con

resistencias de 100 ohms o incluso 56 ohms. La alimentacin


recomendada es de 5V y el consumo no llega a los 100mA. El pulsador
marcado como R es el que reinicia el micro, volviendo la cuenta a cero.
El firmware:
Este, como todo desarrollo micro controlado necesita de un firmware (o
programa de dispositivo) para funcionar. El mismo puede ser descargado
en versiones ASM (para ver y modificar si de desea) o HEX (listo para
cargar en el PICmicro). Como todo programa de estos dispositivos
comienza definiendo equivalencias para nombrar posiciones de la
memoria as como valores literales; luego configura los puertos de E/S (el
A como entradas, el B como salidas). Seguidamente se inicializan los
acumuladores (dig1 o unidades, dig2 o decenas, dig3 o centenas y dig4 o
millares) y se ponen en bajo todas las lneas del puerto B consiguiendo
con esto que ningn display quede iluminado. Luego el programa queda
en un ciclo infinito el cual comprueba si hay actividad en las lneas de
entrada (pines 2 y 3) y muestra el contenido actual de la cuenta
(haciendo una llamada a la sub-rutina display). Si no hay actividad en
ninguna de las dos lneas de entrada el ciclo solo se encarga de hacer
que en los displays se vean los acumuladores. Un pulso bajo en el pin 3
o uno alto en el pin 2 har que el programa salte a la sub-rutina "increm"
la cual aumenta en uno el acumulador de unidades (y maneja el acarreo
de ser necesario). Esta rutina, adems, deriva al programa a otra subrutina la cual se encargar de llevar a cabo el anti rebote que se haya
configurado. En caso de ser un anti rebote por retorno a estado de
reposo lo nico que se hace es quedar a la espera que el pin 2 quede en
estado lgico bajo y el pin 3 en alto. Mientras se espera que esto suceda
se llama a la rutina de display para que los dgitos sigan mostrando el
estado actual del conteo. Sin esta llamada los mismos quedaran
apagados. En tanto, en caso de ser configurado para un anti rebote por
tiempo el sistema primero determinar dicho tiempo cargando a W
inicialmente con 25 y agregndole mas valor segn el estado de los
pines 17 y 18. el nmero restante ser la cantidad de veces que se
ejecute la sub-rutina de display antes de retornar al programa principal.
Pero el retorno se produce incondicionalmente, sin verificar en que
estado se encuentran las lneas por lo que si algn pulsador continua
pulsado la cuenta se aumentar nuevamente.

Вам также может понравиться