3 votos

En LTspice XVII, 74HC107 tiene un error, pero no puedo averiguar cuál es el problema

enter image description here

Hice un circuito como el de la imagen de arriba con LTspice XVII.

Q(0), Q(1), Q(2) son de salida, y CL es CLK (pulso de reloj).

Los JKFF son flip-flop JK activados por flanco negativo (es decir, 74HC107).

enter image description here

Y, el gráfico de este circuito debería parecerse a esta imagen de abajo:

enter image description here

Pero, LTspice muestra un gráfico como este:

enter image description here

(Lo siento, he hecho todo lo posible por ser más claro, pero no lo consigo).

No puedo entender que Q(0) emita 5V a 0s ~ 20s. Es decir, el flip-flop JK disparado por flanco negativo funciona cuando CLK cambia de 5V a 0V. Entonces, ¿no debería Q(0) ser 0V a 0s ~ 20s? Por cierto, ¿por qué Q(0) en LTspice resulta 5V a 0s ~ 20s?

¿He cometido algún error al configurar el circuito?

Saber más

enter image description here

Atributo del componente 74HC107:

enter image description here

Atributo de componente de 74HC08:

74HC08 = Compuerta de 2 entradas, 1 salida

enter image description here

Información sobre CLK(V2):

enter image description here

Información sobre el comando Editar simulación

4voto

Etienne Puntos 6

LTspice es un simulador analógico. Antes de ejecutar el análisis .tran de tu circuito, el simulador calcula el estado inicial del circuito, las tensiones y corrientes en t=0, utilizando el modelo 74HC107 que toma de la librería 74hc.lib. Si conoces los algoritmos del simulador y las interioridades de la librería y puedes manejarte con este conocimiento a tu favor, es posible predecir a qué estado inicial llegará el simulador tras completar la etapa inicial de tu ejecución .tran.

Pero conoces este resultado de tu intento, y no es lo que esperas que debería ser: te gustaría empezar desde Q[0] = 0, Q[1] = 0, Q[2] = 0; sin embargo, el simulador empieza desde Q[0] = 1, Q[1] = 0, Q[2] = 0. En principio, puedes desplazar ligeramente la temporización al principio y separar el encendido y el inicio del tren de pulsos CLK con el propósito de llegar al estado inicial "correcto", pero no deberías. Recuerda, el propósito de simular el circuito es examinar el comportamiento de un diseño hardware real, y la implementación práctica de un contador digital abarca la puesta inicial del contador en un estado requerido. En tu caso, quieres que sea Q[0] = 0, Q[1] = 0, Q[2] = 0. El dispositivo 74HC107 tiene una entrada para resetear el dispositivo, llamada entrada de reset asíncrono, que es activa BAJA. El 74HC107 es un flip flop JK dual, y tiene dos pines, 13 y 10, una entrada para cada uno de sus dos flip flops. En las hojas de datos, estas entradas se denominan \$1 \overline R\$ y \$2 \overline R\$ .

En tu circuito estas entradas se llaman CLRs, y conectaste estos pines a 5V constantes. Debes añadir a tu circuito la señal de reset conectada a estas entradas CLR e iniciar la simulación con estas entradas en LOW (OV). Después de un retardo que garantice que los flip flops se ponen a Q[0] = 1, Q[1] = 0, Q[2] = 0, pones las entradas CLR a HIGH (5V). Durante todo el intervalo de este retardo inicial, las señales CLK conectadas a las entradas CLK deben estar desactivadas (gated con esta señal CLR común). Con este ajuste inicial, tendrás el diagrama de temporización esperado, comenzando desde [0, 0, 0], y no desde [5V, 0, 0], como es el caso de tu circuito.

2voto

dumfries Puntos 1

Si comparas la gráfica de tu 3ª imagen (llamémosla P3) con la simulación LTspice y cuentas el número de pulsos de reloj hasta que todas las salidas se ponen a nivel bajo, verás que en P3 tienes 5 ciclos, mientras que en LTspice sólo tienes 4. Esto significa que en P3 hay (probablemente) una señal de reset que está baja justo al principio y durante un corto tiempo, luego se pone alta, todo durante la duración del 1er ciclo de reloj. Si no hay tal cosa, entonces lo que generó P3 debe haber considerado que todo el contador se reinicia durante el 1er ciclo.

Por lo tanto, necesita una señal de este tipo en su esquema: añada una fuente de tensión con PWL(5u 5 6u 0) (a P iece w ise L inear función que a 5 μs tiene 5 V, entre 5 y 6 μs baja linealmente a 0 V, y luego se queda así). Borrar V3 , V4 et V5 (de todas formas, sólo necesitabas uno, e incluso podría haber sido V1 ), luego conecte todos los CLR a esta fuente. BTW, usted no necesita tyo exagerar los tiempos de subida / bajada de esa manera: es suficiente para que sean alrededor de 100x ... 1000x menor que el período (por lo que para un 20u period make then 20n ).

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