programando la placa PIC32 de 3.3V con pic32prog y PICkit 2

1

Ya logré sobrescribir el gestor de arranque de la placa PIC32MX7 de mis clientes mientras experimentaba con mikroe-uhb. así que antes de poder continuar con la tarea, necesito reprogramarla, y todo lo que tengo a mano es un PICkit 2. Tengo un PICkit 2 a ICD3 cable en orden, pero me preocupa que los diferentes niveles de voltaje (5 VCC en el Pk2, 3.3 en el MMB) podría freír el tablero. buscando en Google, he visto sugerencias para usar diodos o resistencias, o agregar condensadores aquí y allá, pero me pregunto si realmente tiene que ser tan complicado. Vi al menos una publicación que indicaba que si el PICkit2 ve un voltaje en la línea V DD , no apagará la suya propia. ¿Puede alguien aquí decirme con autoridad cuál es el trato?

[añadido más tarde] solo como referencia, aquí está el cable adaptador que compré: enlace

resulta que su numeración de pines es inversa al PICkit 2, es decir, engancha el cable azul al pin 1 del Pk2, en lugar del cable blanco. Encendí la placa mikroe, luego conecté el PICkit2 al puerto ICD3 y ejecuté pic32prog:

jcomeau@aspire:~/rentacoder/jm_____$ pic32prog/pic32prog pic32mx795f512l_bootloader_firmware_v130.hex 
Programmer for Microchip PIC32 microcontrollers, Version 1.96
    Copyright: (C) 2011-2014 Serge Vakulenko
      Adapter: PICkit2 Version 2.32.0
    Processor: MX795F512L
 Flash memory: 512 kbytes
  Boot memory: 12 kbytes
         Data: 12428 bytes
        Erase: done
Program flash: ########################### done
 Program boot: #### done      
 Verify flash: ########################## done
  Verify boot: #### done       
Rate: 1517 bytes per second
    
pregunta jcomeau_ictx

2 respuestas

2

El PicKit2 puede programar dispositivos de 3.3V muy bien. Mire la PK2 guía del usuario , sección 3.4.2:

  

3.4.2 El circuito de aplicación se alimenta externamente

     

El PICkit 2 puede   ser utilizado con circuitos de aplicación alimentados externamente entre + 5.0V y   + 2.5V.

Debe consultar el capítulo 3 completo y comparar sus requisitos / recomendaciones con el esquema de la placa que necesita programar. Pero si tiene un encabezado ICD3, probablemente debería estar bien.

Usted puede medir, antes de conectar el PK2 a su placa, que efectivamente genera el voltaje adecuado en Vdd cuando está controlado por pic32prog (aproximadamente 3.3V).

(Actualizado después de leer la respuesta de Majenko que efectivamente miró el código fuente)

    
respondido por el hli
1

Desde el código fuente de pic32prog:

#define VDD_VOLTAGE             3.3     /* Power supply */
#define VDD_LIMIT               2.81
   ...    
/* PICkit 2 */
unsigned vdd = (unsigned) (VDD_VOLTAGE * 32 + 10.5) << 6;
unsigned vdd_limit = (unsigned) ((VDD_LIMIT / 5) * 255);
pickit_send (a, 4, CMD_SET_VDD, vdd, vdd >> 8, vdd_limit);

Así que supongo que a partir de eso se le dice al PICkit 2 que alimente la placa a 3.3V. No estoy seguro de cuál es el límite de \ $ V_ {DD} \ $ para ...?

Como el PICkit 2 está suministrando alimentación, no debería poder "detectar" la alimentación, por lo que no debería importar si la alimentación está conectada o no. Si está muy paranoico, puede alimentar la placa externamente y conectar el PICkit 2 sin vincular la línea \ $ V_ {DD} \ $. Todavía debería funcionar bien.

    
respondido por el Majenko

Lea otras preguntas en las etiquetas