Estoy trabajando con un derivado de 80C51, el P89C668HFA . En este momento, estoy tratando de obtener una funcionalidad muy básica: solo quiero 1) deshabilitar el cambio de ALE y 2) hacer que los puertos de E / S se activen. Escribí un poco de código para lograr esto:
MOV 08EH,#003H ; set lowest bit of AUXR low to disable ALE toggling
START:
MOV 080H,#000H ; Port 0
MOV 090H,#000H ; Port 1
MOV 0A0H,#000H ; Port 2
MOV 0B0H,#000H ; Port 3
MOV 080H,#0FFH
MOV 090H,#0FFH
MOV 0A0H,#0FFH
MOV 0B0H,#0FFH
SJMP START
END
La salida de mi ensamblador coincide con el binario hecho a mano con el que comencé. Cuando saco el dispositivo del reinicio, el pin ALE sigue alternando, pero no PSEN #, y los pines del puerto de E / S están todos altos. Dada esa información y el hecho de que soy capaz de programar con éxito el dispositivo y verificar que el programa es correcto, creo que el dispositivo funciona correctamente, pero parece que el código no se está ejecutando correctamente (en todo caso).
Apreciaría cualquier comentario sobre el tema, los hilos que podría extraer, etc. Gracias.