Estoy creando una computadora de 8 bits y yo Acabo de desarrollar el reloj.
Utilicé un NE555 (datasheet ) con algunos otros integrados (74 series) para administrarlo.
- El operador podría detener la señal de 555 (con un interruptor) y usarla en "modo manual" usando otro interruptor.
- Ninguna señal de reloj debe alcanzar el pin de salida si el pin de habilitación del reloj está bajo.
Para lograr esto utilicé:
- 74HC00 (NAND) para deshacer el cambio manual
- 74HC00, 74HC08 (AND) para denunciar el cambio automático y la señal de 555
- 74 LS 32 (O) para obtener el reloj manual o el reloj automático (con 555)
- 74HC08 para obtener un valor alto en el pin de salida si tanto el reloj como clock enable son altos.
Espero que este diagrama sea más claro que mis palabras:
¡Ahora lo estoy probando y lo que obtuve es realmente extraño!
-
Primero lo probé con un 74HC161 ( hoja de datos ), un 4 síncrono -bit contador: lo que obtuve está bien: veo
0000
,0001
,0010
, ...,1111
como se esperaba. -
Luego utilicé un 74HC4017 ( hoja de datos ), un 10- contador de anillos de bits con el reloj invertido por un 74LS04, ya que debe estar en mi computadora :
-
Inesperadamente en las frecuencias "altas" (2Hz), al usar el modo automático, el contador se activa con bot de alta a baja y de baja a alta. Al usar el manual, este comportamiento nunca ocurre.
-
Entonces, si apago el administrador automático de reloj y pongo habilitación de reloj para conectar a tierra, el contador continúa avanzando el bit alto. Nota: reloj manual está bajo.
-
Por otro lado, si desactivo el 555 y uso solo el reloj manual, la palabra integrada está bien.
-
Así que verifiqué el valor de voltaje entre OUT y tierra y lo que obtuve es 0.07 V. Es una cantidad demasiado pequeña para ser evaluada por el 744017, pero parece evaluarla de todos modos.
¿Cómo reparar mi circuito? ¿Qué tiene de malo?
Cualquier idea / solución / sugerencia será apreciada.