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