Hay varias formas de actualizar su código a un microcontrolador.
En la web, encontrará bastantes programadores hechos a sí mismos, pero por lo general también tienen software hecho a sí mismo y no están (bien) integrados en el IDE MPLAB.
La solución más barata de Microchip es un PicKit por ~ 40 € que acaba de conectarse a la PC a través de USB. Aunque el PicKit tiene algunas opciones de depuración, también está el ICD 'In Circuit Debugger' más poderoso por ~ 180 €, que tiene más funciones de depuración, pero por supuesto también puede flashear los chips.
Siempre sentí que PicKit es suficiente para mí.
Existen versiones de terceros, ya que el microchip publica firmware y esquemas para PicKit, pero si los compra, asegúrese de obtener realmente lo que piensa. Una vez vi una oferta para PicKit 3, pero no estaba seguro de si no es PicKit 2.
Solo como comentario: hay Microchip MCU, que pueden flashearse. Por ejemplo, utilizamos la familia PIC18F2450 / 2550/4450/4550 con USB incorporado y le pusimos un cargador de arranque. Cuando se cierra un puente, la MCU ingresa al modo de cargador de arranque al inicio, y puede flashear su MCU con su código. Todo eso está disponible en Microchip.
Para usar esto, necesita algunas modificaciones a su código. Y, por supuesto, necesita un programador regular para actualizar inicialmente el cargador de arranque en la MCU. Por lo tanto, esta característica no tiene sentido si tiene un programador. Pero es bueno si quieres actualizaciones de firmware para tus clientes.