Reloj Digital (parte 3) – Contador y multiplexor

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.

(más…)

Reloj Digital (parte 2) – Divisor de frecuencia

Los relojes basan su funcionamiento en un periodo de oscilación fuente. Cuando no había semiconductores a los relojes había que darles cuerda, mover un péndulo o usar un cristal oscilador. De esta forma conseguías una oscilación mantenida la cual luego, en el caso de los relojes mecánicos, se dividía en tiempos mayores jugando con la relación de transmisión de un tren de engranajes.

reloj-mecanico-gona-zonacasio-2013-01

Muchos de los relojes actuales usan como fuente de oscilación un cristal de cuarzo, material el cual tiene una tendencia natural para producir una oscilación de frecuencia constante. En el caso de un circuito electrónico, el cuarzo se puede modelar como un condensador que se descarga y carga periódicamente. Con la ayuda de condensadores auxiliares y una resistencia se puede conseguir un circuito oscilador RC a una frecuencia deseada.

Teniendo esto claro se plantea la siguiente duda, ¿qué frecuencia base es la más adecuada desde la cual partir ?

tim47 (más…)

Reloj Digital (parte 1) – Display Driver

Puesto que lo primero con lo que me he hecho ha sido con el display, la primera parte del reloj que he hecho ha sido su driver.

El display que he usado ha sido un CL5642BH-33. Se trata de un display de 4 dígitos y 7 segmentos de ánodo común con doble punto en medio,¿ ideal para hacer un reloj eh ?7-segment-4-digit-display-common-anode-12-pin--pinoutEste display tiene una particularidad frente a otros de 4 dígitos y es que el punto para el dígito 1 está deshabilitado. Conectando el led DP con el COM1 lo se que enciende es el punto del dígito COM2, pues el DP + digito COM2 lo que enciende son los dos puntitos de en medio.CL5642BH-datasheet (más…)

Reloj Digital ( Intro )

Tras haber hecho el proyecto del reloj digital en VHDL, me interesé mucho por el tema y pensé,¿ por que no hacermelo a la antigua ?. Usando lógica TTL y CMOS, de las familias de integrados 7400 y 4000: decoders, multiplexores, displays led, contadores, cristales osciladores,etc. Puesto que es un Leer más…

Reloj VHDL

En la asignatura de Sistemas electrónicos digitales, como trabajo nos encargaron a mí y a mis compañeros realizar un reloj en VHDL. VHDL es un lenguaje de programación de descripción Hardware que dista un poco de la concepción de programación que se tiene de programar lenguajes de alto nivel como C/C++, pero que para cosas como éstas, pues se acaba haciendo intuitivo. Incluso una de las modalidades de programación (Behavioral) hace que se parezcan bastante.

IMG_20160122_125644

(más…)