Usando el PICkit3 y PIC18F4550

1

Para mi clase de microcontroladores, estoy usando un microprocesador avanzado de 8 bits, el PIC18F4550. Estoy intentando programarlo con un PICkit 3.

He usado la hoja de datos del dispositivo y la hoja de datos de PICkit 3 para conectar los pines. Aquí está la hoja de datos del dispositivo y Hoja de datos de PICkit 3 (aún no tiene suficiente reputación para publicar imágenes).

Desde estas hojas de datos, he conectado los siguientes pines:

| PICkit pin | 4550 pin  |
|:----------:|:---------:|
| 1          | 1         |
| 2          | 11, 32    |
| 3          | GND       |
| 4          | 40        |
| 5          | 39        |
| 6          |unconnected|

Luego simplemente lo conecto a mi computadora, a través de USB, y la programación falla (con la opción '¿Encender este dispositivo desde PICkit?' activada y desactivada). La salida que obtengo está abajo:

PICkit 3 detected
Connecting to PICkit 3...
Firmware Suite Version..... 01.28.40
Fireware type.............. PIC18F
PICkit 3 Connected
PK3Err0045: You must connect a target device to use PICkit 3.
Target Device ID (00000000) does not match expected Device ID (000001200)

Programming...
The following memory regions failed to program correctly.
Program memory
Address 000000000 Expected Value: 000000016 Received Value: 0000000000
Programming Failed

¿Dónde está mi error? ¿Mi dispositivo está frito (como sugieren algunos foros) o mis pines están conectados a algo incorrecto? Mi conjetura es la última.

Esquema con conexiones:

    
pregunta Scott

3 respuestas

1

Encontré la respuesta, y Dios mío, fue una tontería. La primera parte es que tenía los pines en orden inverso. No miré correctamente la hoja de datos para ver dónde estaba el pin 1. Es por la flecha.

En segundo lugar, tenía conexiones con el lugar equivocado. Seguí el siguiente diagrama, y funcionó bien. Tenga en cuenta que Vdd es 5V (suministrado por PICkit 3) y MCLR / NOT (Vpp) es el pin 1.

Si tuviera suficiente representante, publicaría el diagrama.

    
respondido por el Scott
0

Las conexiones se ven bien, así que:
¿Tienes la potencia provista desde el PicKit3? Si es así, ¿está configurado para proporcionar energía? (en la configuración, puede activar / desactivar la alimentación) Supongo que por GND quiere decir los pines 31 y 12? Además, asegúrese de tener una tapa de cerámica de 100nF - 1uF en cada par de clavijas de alimentación.

Si está utilizando MPLABX, la configuración se verá así: haga clic en la llave en la parte inferior izquierda (se muestra ICD3 pero el PicKit3 será similar):

Sitieneenergía,entoncesvuelvaarevisarsusconexiones.Siestáutilizandounconector/cablepersonalizado,asegúresedequeseacortocomoserecomiendaen hoja de datos ( ver pág. 35 6.2) Además, si tiene un osciloscopio a mano, pruebe las líneas para asegurarse de que haya actividad y que la integridad de la señal sea buena.

    
respondido por el Oli Glaser
0

Además de lo que otros han dicho, ate el pin PGM al suelo. Dejarlo flotando puede hacer que el dispositivo entre en modo de programación en momentos inconvenientes. Debe hacer esto incluso si ha deshabilitado LVP en las palabras de configuración. Cuando el programador realiza un borrado masivo, todos los bits de configuración vuelven al estado predeterminado, que incluye LVP habilitado.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas