6 votos

Reiniciando dos contadores CD4017 simultáneamente, sólo uno se reinicia

Estoy trabajando en un simple reloj de 24 horas basado en el CD4017. Para reiniciar cuando el reloj llega a la hora 24, se utilizan dos diodos para producir una lógica "y" cuando los LEDs de 2 y 4 dígitos reciben una salida alta del CD4017. La salida de estos diodos se conecta a los pines de reset de ambos chips CD4017.

Lo que he comprobado que ocurre en la práctica es que el chip U-H10 se reinicia como es de esperar, pero el chip U-H01 no. Me imagino que esto podría ser debido a un retraso en la señal debido a las diferencias en las longitudes de las trazas (tal vez 10-20mm) y o colocaciones creando de alguna manera un pequeño efecto RC. Probé a añadir un pequeño tapón, cortocircuitar las resistencias R138 y R6, así como eliminar R18 (en una PCB grabada, no en una protoboard). También comprobé el reset (pin 15) de U-H01 y no parece estar cortocircuitado a tierra.

¿Alguien más se ha enfrentado a un problema similar? ¿Ideas?

NOTA Para aquellos que no estén familiarizados con el CD4017, el reinicio es alto, no bajo. De la hoja de datos de TI "Una señal de RESET alta borra el contador a su cuenta cero". Por lo tanto, un circuito monoestable que espera un voltaje de flanco descendente para disparar no funcionará en esta aplicación sin usar un inversor.

24-hour LEDs controlled by two CD4017 chips

traces in PCB design

CD4017 chips real PCB

9voto

GSerg Puntos 33571

Está utilizando un "glitch" para reiniciar sus contadores. En otras palabras, cuando el pulso de restablecimiento se inicia, elimina inmediatamente las condiciones para su propia creación, por lo que es sólo tan amplia como el retraso de propagación a través de uno de los contadores.

Evidentemente, uno de esos contadores es más rápido que el otro, por lo que se reinicia con éxito, mientras que el otro no lo hace. Por eso se considera una mala práctica de diseño, y por eso se inventó el conteo síncrono: sólo funciona bajo ciertas condiciones.

La solución es utilizar el fallo para activar un temporizador monoestable (por ejemplo, la mitad de un 4098 ) que garantice el ancho de pulso mínimo de reinicio para ambos contadores. El reinicio no se producirá hasta que el temporizador se dispare con éxito, momento en el cual, no importa si el fallo desaparece.


Veo que has quitado la conexión de R18 a tierra, pero no veo ninguna otra disposición para poner ese nodo en alto. Si ese nodo es sólo flotante, entonces usted está recibiendo el acoplamiento capacitivo y / o corriente de fuga a través de los diodos para su pulso de restablecimiento, agravando el problema.

0 votos

Gracias. Tienes razón en muchos aspectos. Para aquellos que no están familiarizados con el CD4017, el reset es alto, no bajo. De la hoja de datos de TI "Una señal de RESET alta borra el contador a su cuenta cero". Como se puede imaginar, R18 se eliminó para la resolución de problemas para asegurarse de que las trazas eran como diseñado y el circuito se había implementado como dibujado (incluso si es incorrecto.) Debido a mi acceso limitado a las piezas, probablemente voy a tratar de usar un temporizador 555 o un par de transistores 2N2222. Me imagino que en este caso es donde un chip supervisor de reinicio (ADM803) sería útil.

1voto

NK1 Puntos 38

Resulta que los diodos 1N4148 eran marcadores de posición y no estaban actualizados. El diseño era experimental y se suponía que tenía un zener de 4,5v (Nexperia NZX4V3D,133) que no estoy seguro de que hubiera funcionado de todos modos.

Al final, utilicé un circuito 555 para proporcionar un circuito temporizador de disparo positivo para comprobar si el problema era realmente el retraso de propagación a través de uno de los contadores. ( https://www.electroschematics.com/6215/positive-trigger-timer/ )

Como eso no solucionó el problema, indagué más y encontré la especificación del diodo al comprobar el diseño de referencia en el que se basaba.

A falta del zener de 4,5v, he utilizado un circuito AND muy bonito con unos cuantos 2N2222 que tenía por ahí. Ahora funciona muy bien. Para futuras referencias, desactivé el circuito 555 y el reset funciona bien, aparentemente el retardo de propagación no era el problema después de todo. Lo dejaré en su lugar ya que es un mejor diseño.

enter image description here

0voto

Spehro Pefhany Puntos 90994

R18 debe ir a Vdd, no a tierra. De lo contrario, la línea de RESET nunca será alta (los diodos sólo pueden tirar de ella hacia abajo).

Editar: Dependiendo de la familia lógica que estés usando, puede haber suficiente diodo y capacitancia perdida en los diodos para causar falsos reinicios. Asumiendo la lógica HC puedes derivar R18 con unos 20pF. Y asegúrate de que R18 se conecta a Vdd (+5V).

1 votos

Obviamente, si UNO de los contadores se reinicia, entonces algo está funcionando. Tenemos que asumir que el esquema está equivocado en ese detalle. Observa el reajuste de R18 (esquina inferior izquierda) en la foto de la PCB.

1 votos

¿Patada capacitiva a través de los diodos?

0 votos

@Transistor Podría ser. Poner en derivación R18 con ~20pF y asegurarse de que está conectado a Vdd. No añadas demasiada capacitancia o pueden surgir otros problemas.

0voto

EinarA Puntos 71

Para un diseño de una sola vez puedes arreglar esto aumentando la resistencia en serie con el pin de reset del IC más rápido, R138 en este caso. Yo usaría 10K, dejando R6 sin cambiar. (Y usar la resistencia de pull-up que otros han mencionado.) Para una producción en serie probablemente tengas que usar un one-shot. Edición: Me he dado cuenta de que esto no va a funcionar aquí, ya que estás abriendo las salidas de dos contadores. Esta es una solución probable: restablecer H10 como cableado y utilizar el borde ascendente de la salida cero para restablecer H01. Sustituye D2 por una resistencia, corta el trazado entre los contadores para que la resistencia de pull down siga conectada al contador H01, luego conecta un condensador de bajo valor desde la salida cero de H10 a la entrada de reset de H01.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X