Decodificación de binario a BCD de 8 bits para tres pantallas de 7 segmentos

0

He creado un circuito que usa contadores binarios y BCD para convertir un número binario de 8 bits en tres números BCD, que luego se alimentan de BCD a chips de decodificador de 7 segmentos, y finalmente a pantallas de ánodo común.

Cómo funciona: al presionar un botón, un número binario de 8 bits de un interruptor DIP se carga en dos contadores binarios 74LS191, que están conectados para realizar una cuenta regresiva. Cuando ambos contadores han alcanzado su mínimo (es decir, han contado hasta 0), se deshabilitan todos los contadores.

Mientras tanto, una vez que el reloj se pone en marcha, tengo tres contadores BCD 74LS190 que cargan todos los ceros, y los cuento en cadena, de modo que para el momento en que se active la desactivación en los contadores, habrá contado hasta el original. El número de 8 bits es, y se prende a ese valor. Las salidas a estos se alimentan a chips de decodificador 7447 BCD individuales a 7 segmentos, que luego pasan a una pantalla de 7 segmentos de ánodo común de 3 dígitos.

Estoy usando un temporizador 555 para mi reloj, la frecuencia nominal es de 4.8 Hz (en este momento), que planeo subir a unos 200 kHz una vez que todo funcione. Por lo que sé, estas dos frecuencias son mucho menores que las frecuencias máximas para los chips (aunque no pude encontrar una frecuencia máxima en la hoja de datos 7447).

A continuación se muestra el esquema. Lo he simulado en Multisim y funciona perfectamente. Sin embargo, cuando lo construyo, encuentro que los contadores BCD tienen un problema una vez que cuenta desde 19- > 20 (va desde 19- > 0), y algunas veces incluso desde 9- > 10 (a veces va desde 9- > 0). Me parece que tengo un problema en alguna parte de mi encadenamiento de los contadores, pero mis conexiones en mi tablero me parecen bien. Los contadores binarios que hacen la cuenta regresiva están totalmente bien.

¿Alguien tiene una idea de dónde puede haber fallado mi circuito? Tomaría una foto de mi tablero de pruebas, pero es un nido completo de ratas que no planeo ordenar hasta que todo funcione correctamente. Grazie mille!

    
pregunta lemontwist

2 respuestas

2

Es casi seguro que está sufriendo problemas de terreno y / o desacoplamiento.

Suponiendo que está utilizando una configuración de tablero de pruebas sin soldadura, debe hacer 2 cosas. Primero, encuentra alguna manera de reforzar tu sistema de suelo. Intente, por ejemplo, correr los cables de tierra verticalmente y horizontalmente, y use los cables de tierra lo más cortos posible. No hay grandes bucles de alambre. Segundo, en cada IC instale una tapa de cerámica de 0.1 uF desde Vcc hasta el suelo, y coloque cada tapa lo más cerca posible de los pines apropiados. Conecte cada uno directamente al espacio más cercano al pin. Bajo ninguna circunstancia debe ejecutar cables de puente desde el IC a una tapa colocada en otro lugar del tablero.

Esto puede o no funcionar. Un problema aún mayor es que estás haciendo un mal uso de tus contadores. Estos son síncronos, no ondulados. Así que conecta todos los relojes juntos. En cada cadena de contador, conecte el RCO a CTEN del siguiente contador.

Finalmente, necesita un circuito de rebote en su interruptor. Puedes hacerlo usando

simular este circuito : esquema creado usando CircuitLab

    
respondido por el WhatRoughBeast
1

Además de mis comentarios sobre una condición de carrera en CTEN_ y el desacoplamiento de IC en Vcc siempre se recomendó para cada IC, creo que el problema es el siguiente;

El fanout TTL para la integridad de la señal es de 1:10 pero cada CEN_ tiene un valor de fan-in de 3, por lo que con 5 contadores está excediendo la capacidad de fan-out de 10 por 50% para Iol, Ioh en U4A.

Puede verificar que la traza con conductores muy cortos a una sonda 10: 1 y medir el voltaje contra TTL es Vol = 0.8max y Voh = 2.0V.

El umbral de entrada de facto TTL es 2 caídas de diodo. (2Vbe)

Prueba de hombre pobre: si el problema es la integridad de la señal, pruebe con 2 resistencias polarizadas 100R desplegable o 1K pullup.

Si esto es todo CMOS y no realmente lo que está en tu esquema, desperdicias mi tiempo.

Espero que tengas un interruptor libre de rebote, pero no creo que ese sea tu problema.

El último pensamiento es que es el rizado que lleva a cabo el RCO_ el que falla en la sincronización o no al siguiente BIN MSB.

    
respondido por el Tony EE rocketscientist

Lea otras preguntas en las etiquetas