Programación de un microcontrolador con otro microcontrolador

Estoy buscando usar un PIC24FJ256GB106 para programar otros tres del mismo microcontrolador.

Así es como debería funcionar:

  • El programa se envía a través de serie al maestro/PIC de programación
  • Ese PIC lo recibe y usa ICSP para programar los otros PIC a través de las cinco líneas ICSP (E/S)

Antes de decirlo , no, los gestores de arranque no son una opción.

Esencialmente, estoy buscando un programa para hacer que un microcontrolador actúe como un programador PICkit /ICSP. ¿Cómo encontraría uno el código para hacer que suceda esta magia?

Respuestas (3)

Hay varios programadores de PIC de código abierto que programarán el PIC24FJ256GB106. El problema es que todos estos se basan en un PIC18, ninguno parece usar un PIC24 para hacer la programación. Por supuesto, dado que se proporcionan los esquemas y el firmware, si está configurado para usar el mismo PIC24 para hacer la programación, puede convertir una de estas placas (y el firmware) a ese chip.

Aquí hay tres:

LProg de Olin Lathrop , que puede comprar en Microchip DIRECT por $20. Aquí está el esquema y aquí hay un enlace al firmware . Este es el que recomiendo.

Programador de fotos de bricolaje . Puedes comprarlo por 20€ aquí . Firmware disponible aquí .

usbpicprog . Parece que tienes que hacer tu propio tablero para este. Esquema disponible aquí , firmware aquí .

Dudo que encuentre exactamente lo que desea, porque el lugar donde probablemente encontrará esa funcionalidad es en los programadores, que generalmente están destinados a programar una amplia variedad de chips, y la funcionalidad se divide entre el propio programador y el correspondiente. aplicación para computadora Pero aún puede consultar, por ejemplo, el código fuente de pickit2 (está disponible en el sitio web de Microchip) para inspirarse.

Pero debido a que te estás restringiendo a un solo chip objetivo, rodarlo todo tú mismo no es tan difícil. Consulta el manual de programación de tu chip, tiene todos los detalles.

No hay nada mágico o fuera de lo común en lo que estás preguntando. Casi todos los programadores de PIC que existen tienen un PIC que programa otros PIC. Simplemente encontraría uno de los innumerables programadores de PIC de código abierto/hardware que existen y lo adaptaría a sus necesidades. Usted se concentraría en el extremo comercial, no en el USB o la comunicación en serie con un host.