¿Por qué el voltaje es solo 1.4 para la entrada de restablecimiento cuando está en alta impedancia?

0

Intenté hacerme un programador 2-en-1 para poder programar tanto AT89Cx051 como AT89S52 en la misma placa sin tener que hacer mucho enchufando / desenchufando el puerto.

El problema principal es el restablecimiento del pin estroboscópico (RST en circuito). (pin 1 del conector DB25). Lo probé con una PC y no obtuve resultados.

Lo que parece funcionar un poco es si conecté RST a VCC a través de una resistencia de 1K. Algo funciona porque aunque la salida es solo de 3.8V en lugar de 5 (que también está en VCC), pone el AT89S52 en modo de reinicio como se esperaba, pero no obtengo 12V en el pin 1 del pequeño zócalo AT89Cx051.

Si no hago la conexión manual, obtengo 1.4V medidos a RST, incluso después de haber agregado una resistencia de 10K entre VCC y RST. Sin que RST sea forzado a tierra, debería obtener 5V pero no lo soy.

También probé los transistores manualmente de una pierna a otra con el ajuste de diodo en el multímetro y quedaron bien. Las resistencias que van a la base de los transistores son 2.2K y usé resistencias de 1K en lugar de los diodos. Todas las demás resistencias son 10K. La resistencia que entra en el búfer (74HC125) es de 0 ohmios.

Todos los condensadores son 0.1uF.

¿Por qué obtendría tensiones tan incómodas para el pin de reinicio? ¿Estoy usando resistencias demasiado débiles o algo así?

ACTUALIZAR

Así que terminé haciéndome un bootdisk de MS-DOS 6.22 e inicié mi máquina en eso con qbasic para probar el puerto paralelo (con el puerto en la dirección 278-27AH) en general con circuitos simples y eso parece funcionar decentemente.

Cuando encajé solo el puerto paralelo en la PC con solo un voltímetro con cable de ánodo conectado al pin estroboscópico, obtengo los siguientes resultados:

Qbasic code           Result
OUT &H27A, 0          4V output from strobe
OUT &H27A, 1          0V output from strobe

Cuando conecté mi circuito en el puerto, el voltaje disminuyó:

Qbasic code           Result
OUT &H27A, 0          1.56V output from strobe
OUT &H27A, 1          0V output from strobe

¿Cómo es posible que solo reciba 1.56 V de ese pin?

actualización 2

Desconecté la línea de 12V del circuito y los voltajes en la línea de reinicio ahora son 1.52V y 0V

    
pregunta

1 respuesta

1
  1. Le falta una resistencia de pull-up de 10 K en serie con un diodo 1N4148 en el pin de reinicio de la propia MPU. Usted muestra que CRESET está allí para programar el IC, pero no hay un tirón hacia arriba de 3.3 voltios que DEBE estar allí. Su transistor de reinicio necesita una corriente en su colector en todo momento o el IC puede permanecer en estado de reinicio.

  2. El diodo es para evitar que 12 voltios regresen a la línea Vcc de 3.3 voltios durante la programación.

  3. El pin 1 de su conector DB25 debe tener una resistencia de 10 K a tierra para que el transistor de reinicio no se encienda debido a las corrientes de fuga.

  4. Para restablecer el IC, debe conectar a tierra su pin RESET o conectar el pin1 del conector DB25 a Vcc. Al menos ese debería ser tu objetivo.

  5. No estoy seguro de dónde o por qué obtienes 1.4 voltios en el pin de reinicio. En primer lugar, no está definiendo cuál restablece el pin. El IC o el DB25 pin 1. Además, le faltan importantes resistencias de pull-up y pull-down, por lo que, según mis estándares, los 1.4 voltios son solo una corriente de fuga.

  6. Estoy seguro de que verás el cambio de lectura de 1.4 voltios y serás más sensible una vez que instales las resistencias y el diodo que mencioné.

  7. Te perdiste un par de pasos importantes que deberían hacer que funcione correctamente, al menos la función RESET (Restablecer) de todos modos.

  8. Honestamente, su diagrama es un poco confuso. Solo estoy mirando el esquema izquierdo con el conector DB25, que tiene pin1 como RESET si es alto. No puede ser colector abierto a menos que sea un transistor PNP porque T1 debe tener su base baja o restablecerá la MPU.

  9. Estás muy cerca de tenerlo bien. Sí, el diodo está polarizado hacia adelante desde una línea de 3.3 o 5 voltios, a través de la resistencia de 10 K. Esto asegura que el pin RESET MPU se mantiene alto, pero aún puede actuar como un pin de programación. El conector de 3 pines NO debe usarse a menos que esté programando la MPU.

respondido por el Sparky256

Lea otras preguntas en las etiquetas