¿Cómo puedo reprogramar un Megawin MPC89E52A?

3

Tengo un par de aparatos antiguos que usan el microcontrolador Megawin MPC89E52A . Quiero descargar el código existente, desmontarlo, hacer mis propios cambios y reprogramar.

La hoja de datos parece bastante básica, pero afirma que es "totalmente compatible con el microcontrolador estándar industrial serie 80C51". La hoja de datos también indica "memoria flash de 8K bytes incorporada para el programa de aplicación", lo que creo que significa que se puede reprogramar en función de las búsquedas en Google que he hecho hasta ahora.

Hay una fila de pines etiquetados como R, T, I, G y A, que he rastreado hasta RXD, TXD, INT0, RESET y EA. EA se describe en la hoja como "EA debe mantenerse en un nivel bajo para permitir que el dispositivo obtenga el código del programa desde una memoria flash externa", lo que suena prometedor.

No sé nada acerca de las partes de 80C51, excepto que están terminadas. Supongo que hay muchas herramientas para ellos si sé dónde buscar.

Mis preguntas:

  1. ¿Tengo alguna posibilidad de éxito con esta parte en particular?
  2. Si no puedo reprogramarlo, ¿puedo al menos descargar el código existente y sería difícil encontrar un reemplazo compatible con pin? es un QFP-44
  3. Suponiendo que la reprogramación es posible, ¿son los pines mencionados arriba los correctos para esto?
  4. ¿Qué herramientas de software para la programación?
  5. Finalmente, ¿qué tipo de programador necesito? Esperemos que haya algo disponible para usb, pero puedo hacer trabajos paralelos o en serie.

Quizás la pregunta más importante: ¿Cuál es el mejor lugar para buscar información sobre esto?

    
pregunta mmccoo

2 respuestas

4

¿Qué valor tiene este parcheo de ese gizmo para ti? Si no sabes nada acerca de 8051 puede ser una tarea larga y difícil. Desmontar el código le dará una lista de decenas de páginas donde solo se pueden leer las instrucciones, al menos para alguien que sabe 8051. Las etiquetas y las variables son solo números vacíos, y por supuesto tampoco están comentadas. Si la fuente era C en lugar de ensamblador, incluso podría parecer más abstracto.

La hoja de datos no es de gran ayuda para la programación. Menciona el ISP (en la programación del sistema) y el IAP (en la programación de la aplicación), pero el procedimiento del ISP parece incluir la configuración de SFR, por lo que parece que en realidad también es IAP.

  

ISP significa que tiene acceso externo a un microcontrolador que está montado en la PCB de su producto para programarlo. Todo es controlado a través de pines externos.

     

IAP también significa programar el microcontrolador dentro de su producto, pero aquí el microcontrolador tiene que ejecutar un procedimiento de software para hablar con el equipo de programación externo y programar el Flash.

Parece que el controlador necesita un código de programación para reprogramar el dispositivo. Probablemente usará el UART para esto, pero la instalación de programación tiene que programarse en el dispositivo en primer lugar, y la mayoría de los dispositivos comerciales de bajo costo no están hechos para ser reprogramados.

La hoja de datos no dice nada sobre la programación del dispositivo en un programador, pero como es compatible con 8051, la programación también puede ser compatible con eso, y cualquier programador universal legado puede ser capaz de programarlo. Tendrá que eliminarlo cuidadosamente de la PCB, para que pueda resolverlo más tarde.

La alternativa AVR de Pault puede ser una buena idea. Nunca los he usado para reemplazar los 8051, así que revise la hoja de datos cuidadosamente, pin por pin. Pault menciona la ATMega162 , y parece que ATMega8515 también es compatible con 8051 pines. Sin embargo, tenga en cuenta que ninguna de las hojas de datos menciona nada sobre esto.

    
respondido por el stevenvh
2

La hoja de datos dice que se puede programar a través de ISP (en la programación del sistema) lo que significa que debería ser capaz de reprogramarlo. Su código podría estar bloqueado para que usted no puede leerlo pero puede borrar el chip y reprogramarlo.

Atmel crea un chip que parece compatible: el AT89S52 tiene una gran cantidad de datos de información sobre la programación del chip. Además, hay notas y mucha información de terceros sobre la programación del ISP: los pines de programación están marcados como MOSI MISO SS y SCK, el protocolo de comunicación es SPI

Atmel también fabrica un chip que es compatible con 8051 pines pero funciona de una forma mucho más moderna y poderosa Núcleo AVR: el atmega162 que probablemente podría programarse adaptando el entorno Arduino Si proporcionó las definiciones de hardware necesarias: este es el chip que usaría para Reemplace su MPC89E52A, pero luego no tengo la experiencia 8051/2, solo la experiencia Arduino.

también revise el hardware usbasp que ejecuta el software avrdude para programar el chip Puedes comprar un USBASP por aproximadamente $ 4 en eBay. Al parecer, también puede programar 8051 con el USBASP

    
respondido por el pault

Lea otras preguntas en las etiquetas