Cuando empecé este proyecto allá por la primavera de 2016 no pensaba ni por asomo que tardaría tanto en acabarlo. Pero el caso es que entre pitos y flautas lo he dejado súper abandonado. Mientras tenía pendiente de terminar el TFG era incapaz de ponerme con ningún proyecto y luego que esta parte del circuito es más compleja y hasta que no he encargado la placa a china, no ha funcionado.

CONTADOR

La parte del contador corresponde con el núcleo del reloj, pues se van contando en cascada los pulsos para contar minutos, decenas de minutos, etc. Me he basado en un ejemplo de Proteus 7 cambiando cosas para mi proyecto en concreto. Lo más difícil en su momento fue encontrar los susodichos contadores SN74LS160N. Tratándose de circuitos integrados de los años 70′ sumado al SIDA que dan las tiendas de electrónica en Madrid, pues digamos que tuve que recorrerme varias tiendas y no me salieron nada baratos los chips 74XX. El caso es que primero intenté hacer la placa a una cara, pero no estuve diestro con el ácido ( porque soy zurdo , XD)  y salieron muchos cables aéreos, vamos que todo estaba abocado a que esa placa no iba a funcionar. Como es obvio, esa placa no funcionó. Finalmente la encargué a JLC PCB.

El esquemático es el siguiente:

La razón de usar puertas AND e inversores con un BJT es que cuando fui a comprar los integrados no había más que un 74LS10(3x NAND 3 entradas) y no había ANDs de 4 entradas, por lo que compre un 74LS08( 4x AND 2 entradas) y me apañe con dos transistores. Sin entrar muy en detalle, la habilitación de cuenta de cada contador va alimentada por el desbordamiento del anterior. Pese a ser contadores con una salida de 4 bits, al ser decimales, el desbordamiento se produce automáticamente en el cambio de 9 a 10.

Aquí pasó algo gracioso y es que compré por Aliexpress más SN74LS160N por si se me quemaba alguno de los que tenía. Pues los chinos no provocaban el desbordamiento de 9 a 10, si no de 15 a 16. En fin. Por lo que los de Aliexpress sólo me valen de repuesto para los que uso en Decenas de segundos, decenas de minutos y decenas de horas, pues son los que el desbordamiento va forzado para pasar de 5 a 6 y de 3 a 4, para las decenas de horas.

Los interruptores valen para ajustar la hora, aunque como el reloj de todos los contadores es de 1Hz, se ajusta la hora a razón de 1 segundo, bastante poco práctico. Hay dos soluciones, aprovechando que el divisor de frecuencia tiene salidas de 4, 8 y 32 Hz:

  • Hacer como el reloj de Proteus y poner un contador más que cuente hasta 8 con la señal de 8Hz y utilizar su carry para la habilitación de cuenta del segundero.
  • Un conmutador para cambiar el CLK del reloj cuando quiera ajustar la hora, aunque esto puede producir picos no deseados y que el reloj haga extraños.

Así luce la placa del contador sin soldar:

Ha habido que cortar un par de pistas, cosas que pasan por no revisar diseños viejos.

Aquí tenéis la placa soldada, como veis, se me olvido poner la capa de los nombres en los gerbers :

MULTIPLEXOR

Si os acordáis de cuando hice el Display driver, al display llega solo un dígito a la vez, el cual viene multiplexado con la misma señal que uso para decodificar que común del display activar.

Del divisor de frecuencia sale una señal de 256Hz que va a un contador de 4 bits, el cual genera 2 señales S0 y S1, a 64Hz y 128Hz respectivamente. Dado que del contador salen 4 buses de 4 bits, para multiplexar los dígitos he usado 2 SN74LS153N ( 2 x mux 4a1) construyendo un mux  de 4 a 1 para buses de 4 bits. Véase esquemático:

Ésta placa la hice con ácido hace tiempo dada su simplicidad.

LÓGICA DP

Como comenté en la parte del display driver, había dejado el pin DP fuera para mas tarde implementar una lógica para hacerlo parpadear cada segundo. Puesto que no tengo mas integrados 74XX para realizar el circuito he recurrido a lógica RTL ( Resistor-Transistor-Logic) pues tengo 2n2222 para aburrir. La función implementada es NAND puesto que la lógica de los segmentos es de nivel bajo. Así queda el circuito:

Actualmente este circuito está montado en protoboard.

SEGUNDERO

Aquí podéis ver el montaje final.

Aquí tenéis un video donde se ve el funcionamiento del reloj.

Aquí tenéis el repositorio del reloj:

https://github.com/picatostas/digital-clock

¿Qué es lo siguiente que haré con el reloj?

  1. Montar el segundero, según llegue la placa.
  2. Lógica de parpadeo del DP.
  3. Solucionar lo del reloj de los contadores para poder ajustar la hora más rápido.
  4. Encargar placas para las que hice con ácido y quizás juntar en la misma PCB el muxer con el divisor de frecuencia.
  5. Comprar Nixies para hacer el reloj mucho más molón.

 

 


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *