Anda di halaman 1dari 44

GM PIGPROGRAM v1.

0
Manual de usuario
Grabador/Depurador en circuito de dispositivos PIC

 
 
GM PICPROGRAM v1.0 ‐ Manual de usuario  
INDICE GENERAL                                                                                                  2 
   
1     INTRODUCCION 
2     CARACTERISTICAS GENERALES 
       2.1 Especificaciones del GM PICPROGRAM v1.0 
       2.2 Estructura de la tarjeta GM PICPROGRAM v1.0 
3     DESCRIPCION 
       3.1 Puerto USB 
       3.2 Leds de señalización 
       3.3 Conector ZIF 40 pines 
       3.4 Conector ZIF 20 pines 
       3.5 Jumper T/B 
       3.6 Terminal ICD2 
       3.7 Terminal ICSP 
       3.8 Botón de Programado 
       3.9 Zócalos EEPROM   
4     EL ENTORNO DE DESARROLLO MPLAB‐IDE 
       4.1 Menú principal 
       4.2 Selección de dispositivo 
       4.3 Selección del grabador 
       4.4 Ficheros HEX y buffers de memoria 
       4.5 Funciones más comunes del grabador 
       4.6 Iconos de grabación 
5     EL SOFTWARE DE GRABACION Pickit‐2 
       5.1 Descripción del Software 
       5.2 Instalando el Software 
       5.3 Selección de dispositivo 
       5.4  Importar un fichero HEX 
       5.5 Grabación del dispositivo 
       5.6  Verificando el dispositivo 
       5.7 Lectura del dispositivo 
       5.8 Borrado del dispositivo 
       5.9 Verificando el borrado 
       5.10 Procedimiento automático de lectura/escritura 
6   EL MODO DEPURACION 
     6.1 Seleccionando el dispositivo 
     6.2 Seleccionando el depurador 
     6.3 Funciones mas comunes en la depuracion 
          6.3.1  Clear Memory 
          6.3.2  Run 
          6.3.3  Animate 
          6.3.4  Halt 
          6.3.5  Step Into 
          6.3.6  Step Over 
          6.3.7  Step Out 
INDICE GENERAL                                                                                                   3 
 
           6.3.8    Reset            
           6.3.9    Breakpoints 
           6.3.10  Advanced Breakpoints 
           6.3.11  Program 
           6.3.12  Read 
           6.3.13  Read EEDATA 
           6.3.14  Connect 
           6.3.15  Download OS 
           6.3.16  Settings   
      6.4  Iconos empleados en la depuración 
7    DISPOSITIVOS ADMITIVOS POR GM PICPROGRAM v1.0 
       7.1 Modo Grabador 
       7.2 Modo Depurador   
  
 
     
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1  INTTRODUCCION                                                                                               4 
 
RESENTACIO
1.1 PR ON 
 
 
GEELMED  S.R..L.  Ingenieríía  &  Serviciios 
preesenta  el  nuevo  Grabador  y 
Depurador  GM  PICPROGRAM  v2.61 
parra  la  grabación  y  deepuración  en 
circcuito  de  disspositivos  PIC  de  la  línea 
Microchip,  se  trata  de  un  hardwaare 
meejorado y dee bajo costo diseñado paara 
su  conexión directa a la PC C en donde  se 
reaalizan  las  tareas 
t de  grabación 
g y
y/o 
depuración de los program mas. 
 
                                              Fig. 1 
 
       GM
M  PICPROG GRAM  v2.61 1  presenta  el  hardwaree  y  el  firmwware  compaatibles  con  el 
sistem ma PICkit2 de microchip p, lo cual nos permite utilizar como o entorno dee desarrollo  el 
conocido software e MPLA‐IDEE desde el cu ual se realizaran todas  las operacio ones típicas  de 
edición,  ensamblaado,  depuraación  y  grab bación  de  un 
u programaa  fuente  asíí  también  Ud. 
U
podrá emplear el software dee grabación P PICkit2.  
 
       Estas  dos  he
erramientas  así  como  el  firmwaree  de  nuestro  grabador  pueden  ser  s
descarrgadas  y  actualizadaas  desde  la  página  oficial  de  d Microch hip  Co.  Lttd.  
(www.microchip.ccom).  Las  prruebas  realizadas  así  co omo  las  refeerencias  quee  aparecen  en 
este m manual, se hiicieron con las siguientees versiones de softwaree: 
 
‐ MPLA AB‐IDE v8.46 
‐ PICkiit‐2 v2.61 
 
       La característiica más sobresaliente ddel grabadorr GM PICPRO OGRAM v2.61 (ver Fig.  1) 
es su iinterface USSB‐PC y sus ddistintos tipoos de conexión (ZIF sockket 8‐20/28‐4 40 pines, ICSSP, 
ICD2)  a la hora de e grabar un  PIC lo que  representa aa diferencia de sus pred decesores una 
interfaaz más accessible y rápida a la hora d de programaar un microcontrolador.  

       En
n fin dispone
emos de unaa potente y vversátil herraamienta de hardware grracias a la cu ual 
no  solo  grabamoss  el  controlador  sino  que 
q también n  nos  permiite,  en  fase  de  diseño,  la 
depuración  en  tie empo  real  y 
y la  puesta  a 
a punto  de  los  program mas  de  apliccación.  Para  el 
prograamador  GM  PICPROGRA AM  v2.61  se  convertiráá  en  una  heerramienta  imprescindib ble 
para q que lleve ade
elante aplicaaciones basaadas en el mundo de miccrocontrolad dores PIC. 

 
 
 
2  CARACTERISTICAS GENERALES                                                                     5 
 
2.1 ESPECIFICACIONES DE GM PICPROGRAM v2.61 
 
‐ Soporta aplicaciones de la familia de microcontrolador PIC. 
‐ Conexión con la computadora a través de puerto USB. 
‐ Utiliza la fuente de alimentación directa desde el puerto USB. 
‐ Puede programar a través de la herramienta de ZIF socket  (8‐20/28‐40 pines). 
‐ Puede programar a través del terminal ICSP  (In‐Circuit Serial Programming) 
‐ Puede programar/depurar a través del terminal ICD2  (In‐Circuit  Debugger 2) 
‐ LEDs de señalización para mostrar el estado de operación. 
‐ Puede programar directamente mediante el botón PROGRAMAR. 

 
2.2 ESTRUCTURA DE LA TARJETA GM PICPROGRAM v2.61 
 

  2   3 4
 

  5
  
1

  6

   

  9  8 7
Fig. 2 
 

 
3  DESCRIPCION
N                                                                                                    6 
 
 3.1 PUUERTO USB  
 Es el tterminal parra conectar la PC con el ggrabador GM
M PICPROGR
RAM v2.61 

Fig. 3 
 
3.2 LEDS DE SEÑA
ALIZACIÓN 
 
Muesstra el estado o de operación del grabador POWER, 
TARG GET, BUSY. 
 
BUSY Y:  Se  trata  de  un  LED  rojo  parra  mostrar  el 
funcioonamiento een estado de programador. Estará  en 
ON  cuando  el  prrograma  se  está  ejecutaando,  como  la 
lecturra/escritura  de  la    memoriaa  Flash  del  d
micro ocontroladorr PIC. 
TARG GET: Es un LEED amarillo q
que muestraa el  estado de 
la alim
mentación del grabador. 
POWER: Es un LEED verde quee muestra la  alimentación 
de la tarjeta. 
 
 
                          Fig. 4 
 
3.3 COONECTOR ZIFF 40 PINES 
 
‐  Sopoorte  para  M
Microcontrolladores  PIC desde  28  p
pines  
hasta 40 pines  tippo DIP.  
‐  Colo
ocar  la parte superior d
del  PIC commo se muestrra en 
la figura. 
‐  Unaa vez colocado el PIC assegurar el mmismo bajand do la 
palancca.  
 
NOTA:: El conector ZZIF soporta  m microcontroladores de la gama 
media standard, verr dispositivos soportados a al final de este 
al.                                                                                                                                                       Fig. 5 
tutoria
  
3  DESCRIPCION                                                                                                    7 
 
 3.4 CONECTOR ZIF 20 PINES 
 
‐  Soporte    para    Microcontroladores      PIC  desde    8 
pines  hasta  20 pines    tipo DIP.  
‐ Colocar la  parte superior  del PIC como se muestra 
en la figura. 
‐ Una vez colocado el PIC asegurar el mismo bajando 
la palanca.  
 
NOTA: El conector ZIF soporta  microcontroladores de la 
gama media standard, ver dispositivos soportados al final 
de este tutorial. 
                                                                                                                                                                       Fig. 6 
 
3.5 JUMPER T/B 
 
       Empleado para  seleccionar el suministro de energía  a los   Puertos ICD2 e ICSP  de  nuestro 
grabador. El GM PICPROGRAM v2.61 puede grabar los programas directamente poniendo el PIC  
en  el  CONECTOR  ZIF  correspondiente,    y  mediante  los  puertos  ICSP  e  ICD2  usted  podrá 
interconectar  el  grabador  con  su  circuito  de  pruebas  (Breadboard)  o  con  una  tarjeta  de 
microcontroladores (Targetboard) según se requiera programación o depuración.  
 
       El JUMPER T/B  sirve para controlar y variar la tensión que se suministra al puerto ICSP 
e ICD2 para nuestro grabador. 
 
 
  T
 
 
 
 
B
 
                                                                                               Fig. 7 
 
‐    Cuando  se  desee  grabar  el  microcontrolador  directamente  en  el  CONECTOR  ZIF,  se 
deberá ajustar el JUMPER T/B a la posición “T” para que la tensión de alimentación sea la 
tensión del terminal USB +5V. 
 
‐  Cuando se desee grabar y/o depurar el microcontrolador mediante los puertos ICSP o 
ICD2,  se  deberá    ajustar  el  JUMPER  T/B  a  la  posición  “B”  para  que  la  tensión  de 
alimentación  sea  la  tensión  ajustada  mediante  el  software  PICkit2  de  Microchip 
(www.microchip.com). 
 
 
 
3  DESCRIPCION                                                                                                   8 
 
3.6 TERMINAL ICD2 
 
       Es un puerto de señal para programación, conforme a la norma ICD2 (programmer suit 
and debugger of Microchip Co. Ltd.) este terminal es un depurador en circuito, lo que lo 
convierte en una herramienta fundamental para el diseño y puesta a punto del programa 
de aplicación del usuario.  
 

1 2
 
                                                                                               Fig. 8 
       El terminal ICD2 es un conector tipo RJ11 como se muestra en la figura, la patilla N°1 
es la primera de la izquierda. 
 
N° PIN  SEÑAL  DESCRIPCION 
1  MCLR/Vpp  Señal Vpp de grabación 
2  VDD  Alimentación +VDD 
3  GND  Tierra de alimentación 
4  PGD  Señal de datos 
5  PGC  Señal de reloj 
6  NC  No conectada 
 
       El conector transporta las señales propias de grabación PGC, PGD,  GND, VDD y Vpp, 
distribuidas  como  se  muestra  en  la  siguiente  tabla,  gracias  a  estas  señales  se  puede 
realizar,  mediante  la  conexión  apropiada,  la  depuración  no  solo  con  módulos  de 
emulación, sino que también se puede conectar con cualquier tarjeta de evaluación o de 
aplicación  diseñada  por  el  usuario,  siempre  y  cuando  se  hayan  previsto  en  el  diseño  el 
hardware correcto. 
 
3.7 TERMINAL ICSP 
 
       Es un puerto de señal para programación al igual que el puerto 
ICD2  pero  su  terminal  posee  un  arreglo  diferente  ya  que  usa  un  
conector de 6 pines el cual se emplea para conectar el grabador  con 
un  circuito  de  pruebas  (Breadboard)  que  no  posea  un  conector 
ICD2. 
                                                                                                                                   Fig. 9 
 
 
3  DESCRIPCION                                                                                                    9 
 
 3.8 BOTÓN DE PROGRAMADO 
 
       Puede  grabar  el  microcontrolador  con  solo 
presionar  este  botón  el  cual  es  equivalente  a 
hacer  clic  en  el  software  PICkit2  de  Microchip. 
Usted  podrá  usar  esta  función  configurando  el 
software PICkit2 de la siguiente forma: 
 
        
                                                                                                                                  Fig. 10 
       MenuÆ  Programmer    y  seleccione  la  opción  “Write  on  PICkit  Button”      como  se 
muestra en la figura a continuación. 
 

 
Fig. 11 
3.9  ZOCALOS EEPROM  
         GM PICPROGRAM v2.61 cuenta con dos zócalos los cuales permiten la programación 
de microcontroladores mediante la herramienta Pickit2 Programmer To‐Go (Programar sin 
PC).  
 
 
 
 
 
 
 
Fig. 12 
El  proceso  de  lectura/escritura  también  se  realiza  a  través  del  puerto  ICSP  del  GM 
PICPROGRAM v2.6 según el tipo y configuración de memoria  
 
NOTA:  Ver  las  familias  de  memorias  EEPROM  seriales  soportadas  por  GMPICPROGRAM  v2.6  al 
final de este tutorial.  
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              10                                   
 
4 .1 MENU PRINCIPAL 
 
       La instalación de MPLAB‐IDE es totalmente intuitiva y automática por lo cual creemos 
no  supone  ninguna  complicación  para  el  usuario,  bastara  con  seguir  paso  a  paso  las 
instrucciones que se presentan. En la figura  se muestra la pantalla principal de MPLAB‐IDE 
la cual nos servirá para realizar una breve descripción de las opciones del menú principal. 
 

 
Fig. 13 
 
File    Contiene  todas  las  opciones  y  comandos  relacionados  con  el  manejo  de  ficheros: 
abrir fichero, salvar fichero, imprimir, importar, exportar, etc. 
 
Edit  Contiene todas las opciones y comandos tipicos de cualquier editor de texto: buscar, 
buscar y sustituir, cortar, pegar, marcar, etc. 
 
View  Con  esta  opción  podemos  abrir,  visualizar  y  organizar  sobre  el  aérea  de  trabajo 
diferentes  tipos  de  ventanas  relacionadas  con  el  PIC  seleccionando:  memoria    de 
programa, memoria de datos, registros especias, EEPROM, etc. 
 
Project  Presenta  todos  los  comandos  y  opciones  relacionados  con  los  proyectos:  abrir 
proyecto, cerrar, salvar proyecto, ensamblar y/o compilar, etc. 
 
Debugger  Presenta  comandos  y  utilidades  propios  de  la  depuración  de  un  programa  de 
aplicación: seleccionar herramienta de depuración/emulación (simulador, ICE200, ICD2 y 
otros),  ejecución,  ejecución  paso  a  paso,  puntos  de  ruptura,  reset  y  mucho  mas.  En  el 
apartado 6 se expone el funcionamiento del MPLAB‐IDE como depurador con nuestro GM 
PICPROGRAM v2.61 
 
Programmer Presenta comandos y utilidades propios de la grabación del programa sobre 
la  memoria  física  del  PIC:  seleccionar  grabador  (PIC  START  PLUS,  PROMATE  y  otros). 
Seleccionaremos  el  PICkit2  que  es  compatible  con  nuestro  grabador  GM  PICPROGRAM 
v2.61. Desde este menú disponemos también de los comandos para leer un PIC, grabarlos, 
verificar, borrarlo, etc. 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              11               
 
 
Tools  Mediante  este  menú  se  accede  a  una  serie  de  utilidades  y  herramientas  software 
que, en sucesivas versiones de MPLAB‐IDE, van apareciendo. 
 
Configure  Permite realizar diferentes tareas de configuración: seleccionar modelo de PIC, 
ajustar  su  palabra  de  configuración  e  identificación,  realizar  ajustes  del  propio  entorno 
MPLAB‐IDE. 
 
Windows  Selecciona  diferentes  formas  de  visualización  de  las  distintas  ventanas  que 
podemos visualizar sobre el aérea de trabajo. 
 
Help Contiene un completo sistema de ayuda general (en ingles) para el MPLAB‐IDE. 
 
4.2 SELECCIÓN DE DISPOSITIVO 
 
       Una  vez  que  el  MPLAB  IDE  esta 
en  ejecución,  una  de  las  primeras 
tareas  a  realizar  será  seleccionar  el 
modelo  de  PIC  con  el  que  vamos  a 
trabajar que en nuestro caso será el 
PIC16F877A.  En  el  menú  principal 
seleccionamos:  Configure  Æ  Select 
Device.  
       Aparece  una  ventana  como  la 
mostrada  en  la  figura.  En  el  menú 
desplegable “Device” seleccionamos 
el modelo de PIC, el PIC16F877A en 
el  ejemplo,  y  automáticamente 
veremos  un  resumen  de 
herramientas tanto hardware como 
software que el MPLAB es capaz de 
soportar  con  el  modelo  recién 
seleccionado.  
 
                                                                             Fig. 14 
       Las señales de color verde indican herramientas disponibles. Las rojas representan a 
herramientas  no  disponibles  en  el  MPLAB  IDE  para  el  dispositivo  seleccionado.  También 
pueden  aparecer  señales  amarillas  que  indican  que  la  herramienta  en  cuestión  se 
encuentra en fase de testeo y no es definitiva. En el ejemplo se selecciono el PIC16F877A 
observando la figura anterior podemos observar que herramientas se pueden emplear el 
MPLAB  con  dicho  modelo.  Cabe  destacar  que  entre  ellas  se  encuentra  el 
Grabador/Depurador  PICkit2  que,  como  hemos  venido  repitiendo  es  totalmente 
compatible con nuestro GM PICPROGRAM v2.61 
 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              12               
 
4.3 SELECCIÓN DEL GRABADOR 
 
       Seleccionado  el  dispositivo  en  este  caso  PIC16F877A  y  conectado  nuestro  GM 
PICPROGRAM  v2.61  a  la  PC  mediante  el  cable  USB,  escogemos  el  tipo  de  grabador  que 
vamos a emplear. En el menú principal seleccionamos: Programmer Æ Select Programmer 
y  aparecerá  un  menú  desplegable  como  el  que  se  muestra  en  la  figura  y  escogemos 
PICkit2. 

 
Fig. 15 
 
       Inmediatamente  el  MPLAB  trata  de  establecer  conexión  con  nuestro  GM 
PICPROGRAM v2.61 (Compatible con PICkit2). Si todo salió bien, nos debe aparece en la 
ventana “Output” una serie de mensajes como los mostrados en la figura, los cuales nos 
indican  que  se  ha  localizado  el  PICkit2,  la  alimentación  es  de  4.99V  y  que  el  PICkit2  se 
entra listo y conectado. 

 
Fig. 16 
 
       Si  en  PIC  inserado  en  el  zocalo  ZIF  es  el  elegio    el  MPLAB  mostrara  un  mensaje 
“PIC16F877A found” indicando que dicho PIC ha sido identificado. En caso de que el PIC 
no estuviera insertado en el zocalo ZIF, aparecera un mensjae “PKWarn0003: Unexpected 
divece ID: Please verify that a PIC16F877A is correctly installed in the application.(Expected 
ID  =  0xE00,  ID  Read  =  0x0)”.  Esto  nos  recuerda  que  debemos  insertalo  para  poder 
proceder con las operaciones propias del grabador. 
 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              13               
 
4.4 FICHEROS HEX Y BUFFERS DE MEMORIA 
 
       Los ficheros .HEX son los que se obtienen tras el proceso de ensamblado o compilado 
de  un  programa  fuente  y  cuyo  contenido  se  grabara  en  las  diferentes  memorias  del 
microcontrolador. Efectivamente, el contenido de un fichero .HEX puede estar compuesto 
de  tres  tipos  de  información  que  irán  a  parar  a  sus  correspondientes  regiones  de 
memorias dentro del microcontrolador. 
 
‐  Memoria  de  Programa.    Contiene  el  código  hexadecimal  de  las  instrucciones  del 
programa que el controlador debe ejecutar. 
 
‐  Memoria  de  datos.  Contiene  información  adicional  o  datos  que  se  grabaran  en  la 
memoria EEPROM de datos del controlador. 
 
‐ Memoria de Configuración. Contiene información sobre la configuración del controlador 
y valores de identificación. 
 
       El MPLAB IDE dispone de otros tantos buffers de memoria, cada vez que se ensambla 
o compila un programa fuente se genera el correspondiente fichero .HEX y esos buffers se 
llenen  con  el  resultado  hexadecimal  de  ese  ensamblado  de  forma  que,  posteriormente, 
puedan copiarse o grabarse sobre la memoria física del PIC. 
 
       Mediante  el  comando  File  Æ  Import    también  es  posible  importa  ficheros  .HEX 
procedentes de otras fuentes distintas a las generadas por el MPLAB IDE. Sea como fuere, 
cada vez que se abres un fichero .HEX los tres buffers de memoria del MPLAB IDE se llenan 
con  sus  correspondientes  contenidos:  memoria  de  datos  y  configuración,  para  su 
posterior  grabación  sobre  el  PIC.  Los  buffers  del  MPLAB  también  se  pueden  llenar 
manualmente con contenidos hexadecimales, mediante los correspondientes comandos: 
 
‐  ViewÆ  Program  Memory:  Permite  visualizar  y  modificar  el  contenido    del  buffer 
correspondiente a la memoria de programa. 
‐ ViewÆ EEPROM: Permite visualizar y modificar el contenido del buffer correspondiente 
a la memoria EEPROM de datos. 
‐  ConfigureÆ  Configuration  Bits:  permite  visualizar  y modificar  los  bits  de  configuración 
del buffer correspondiente a la memoria de configuración. 
‐ ConfigureÆ ID Memory: Permite visualizar y modificar los datos ID de identificación del 
buffer correspondiente a la memoria de configuración. 
 
       Una  vez  obtenido  el  fichero  .HEX  los  tres  buffers  de  memoria  del  MPLAB  IDE 
contendrán  la  información  necesaria  que  deberá  grabarse  en  las  memorias  del 
controlador, tal y como veremos a continuación. 
 
 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              14               
 
4.5 FUNCIONES MÁS COMUNES DEL GRABADOR 
 
       Cuando  se  ha  seleccionado  el  tipo  de 
grabador  (PICkit2)  y  se  ha  realizado  la 
conexión con él, se activan todas las opciones 
que se encuentran en el menú “Programmer” 
y que son propias de un típico grabador. Ver 
la figura. 
 
       La primera opción, “Select Programmer”, 
se empleo anteriormente para seleccionar el 
tipo de grabador que vayamos a emplear. En 
nuestro caso seleccionamos el PICkit2 que es 
compatible  con  nuestro  GM  PICPROGRAM 
v2.61, a continuación se detallan las opciones 
restantes. 
                                                                                                                                    Fig. 17 
Program:  
      Realiza  el  proceso  de  grabación  propiamente  dicho,  copia  los  contenidos  de  la 
memoria de programa memoria de datos y memoria de configuración actual de los buffer 
del MPLA IDE, sobres las correspondientes memorias físicas del controlador. 
 
Read:  
     Lee  los  contenidos  actuales  de  las  memorias  de  programa,  datos  y  configuración  del 
controlador y los deposita sobres los correspondientes buffers del MPLAB IDE. 
 
Verify:  
     Verifica  que  los  contenidos  actuales  de  las  memorias  de  programa,  datos  y 
configuración sean idénticos a los contenidos de los correspondientes buffers del MPLAB 
IDE. 
 
Erase:  
     Borra todo el contenido actual de las memorias del controlador. 
 
Blank Check: 
     Comprueba que las memorias  del controlador estén borradas. 
 
Read EEDATA:  
     Lee el contenido de la memoria EEPROM de datos del controlador y los deposita sobres 
el correspondiente buffer del MPLA IDE. 
 
Connect:  
     Restablece  de  nuevo  la  conexión  con  el  grabador  seleccionado,  en  nuestro  caso  el 
PICkit2. 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              15               
 
Download OS:  
     Actualiza el firmware interno del PICkit2 (PICPROGRAM v2.61). Esta operación puede 
ser necesaria cuando se descargue una versión actualizada del propio MPLAB IDE. 
 
Release from Reset:  
     Esta opción pone a nivel “1” lógico la patilla MCLR del microcontrolador.  
 
Hold in Reset:  
     Esta  opción pone a nivel “0” lógico la patilla MCLR del microcontrolador. 
 
Settings:  
     Con  esta  opción  se  abres  una  ventana  similar  a  la  mostrada  en  la  Fig.  17  que  permite 
activar  o  no  una  serie  de  procesos.  En  la  pestaña  “Settings”  hemos  elegido  los  dos  que 
consideramos más importantes: 
 
‐ Connect  on  startup.  Cada  vez  que  se  selecciona  el  programador  PICkit2  (GM 
PICPROGRAM v2.61) se produce automáticamente a la conexión con el mismo. En 
caso  contrario  hay  que  ejecutar  manualmente  el  comando  Programmer  Æ 
Connect. 
 
‐ Program  after  a  successful  build.  Esta  opción  es  muy  interesante,  cada  vez  que 
ensamblamos  nuestro  programa  fuente,  si  no  hay  errores,  se  procede 
automáticamente a grabar el dispositivo con el ejecutable recién obtenido. 
 
 
 
 
 
 
 
 
 
 
 
 
En  la  pestaña “Warnings”                     
tenemos  la  posibilidad de 
activar o no los mensajes y 
avisos  que  deseamos  que 
aparezcan  si  se  producen 
determinados eventos. 
Fig. 18 
 
 
 
4  EL ENTORNO DE DESARROLLO MPLAB‐IDE                                              16               
 
4.6 ICONOS DE GRABACIÓN 
 
       La mayor parte de las opciones del menú “Programmer” se pueden ejecutar mediante 
una serie de iconos de acceso directo como los mostrados en la figura. 
 

 
Fig. 19 
 
De izquierda a derecha detallamos la función de cada icono: 
 
‐ Program the target Device: Programar el microcontrolador. 
 
‐ Read  target  Device  memories:  Leer  el  contenido  actual  de  las  memorias  del 
controlador. 
 
‐ Read  the  target  EEDATA  memory:  Lectura  de  la  memoria  EEPROM  de  datos  del 
controlador. 
 
‐ Verify  the  contents  of  the  target  device:  Verifica  el  contenido  del 
microcontrolador. 
 
‐ Erase the target device memories: Borrar las memorias del controlador. 
 
‐ Verify  that  target  memories  are  erased:  Comprueba  que  el  controlador  este 
borrado. 
 
‐ Bring target MCLR to Vdd: Pone a nivel “1” lógico el pin MCLR del PIC. 
 
‐ Bring MCLR to Vil: Pone a nivel “0” lógico el pin MCLR del PIC. 
 
‐ Connection: Restable la conexión con el PICkit2 (PICPROGRAM v2.61). 
 
 
 
 
 
 
 
 
 
 
 
 
 
5  EL SOFTWARE DE GRABACION PICkit2                                                     17               
 
 5.1 DESCRIPCIÓN DEL SOFTWARE 
 
       Se  trata  de  otro  programa  de  libre  distribución,  desarrollado  por  Microchip  para  su 
sistema PICkit2 original que es compatible con nuestro grabador GM PICPROGRAM v2.61. 
Se puede descargar y actualizar desde www.microchip.com. 
 
       A  diferencia  del  MPLAB  IDE,  este  software  esta  desarrollado  para  realizar, 
fundamentalmente, tareas de grabación y no permite por tanto editar programas fuente, 
ensamblarlos,  depurar,  etc.  Sin  embargo  admite  la  grabación  de  un  mayor  número  de 
dispositivos PIC e incluye una serie de aplicaciones opcionales. 
 
       Insistimos en que nuestro grabador es 100% compatible con el PICkit2 en cuanto a las 
tareas de grabación se refiere, e incluye las funciones y posibilidades de este. 
 
       A continuación nos vamos a referir a las funcionalidades más comunes del  software 
PICkit2 en lo que respecta a la tarea de grabación. 
 
5.2 INSTALANDO EL SOFTWARE 
 
       El  software  de  instalación 
del  PICkit2  se  incluye  en  el 
CDROM.  Hay  que 
descomprimirlo  e  iniciar  la 
instalación la cual es totalmente 
intuitiva  y  automática  por  lo 
cual  creemos  no  supone 
ninguna  complicación  para  el 
usuario, bastara con seguir paso 
a  paso  las  instrucciones  que  se 
presentan. Una vez concluida la 
instalación  se  procederá  a 
conectar  el  GM  PICPROGRAM 
v2.61 a la PC mediante el cable 
USB  suministrado. 
Inmediatamente  es  reconocido 
por  Windows  como  un 
dispositivo  de  interface  de 
usuario  (HID)  que  se  puede  ver 
en  el  Panel  de 
ControlÆSistemaÆHardwareÆ
Administrador de Dispositivos. 
                                                                                      
Fig. 20 
 
 
5  EL SOFTWARE DE GRABACION PICkit2                                                     18               
 
       Su  ejecución  se  puede  realizar  desde  InicioÆProgramasÆMicrochipÆPICkit2  o  bien 
desde el mismo icono de acceso directo que se crea en el escritorio tras la instalación. La 
figura muestra el aspecto del programa. 
 
       En  ella  se  puede  aprecia  una  ventana  de  estado  en  la  que  se  nos  informa  que  el 
PICkit2  (GM  PICPROGRAM  v2.61)  ha  sido  localizado  y  conectado  (“PICkit2  connected”) 
también se observa el mensaje “PIC Device Found” cuando el microcontrolador (en este 
caso el 16F877A) esté conectado. 
  
5.3 SELECCIÓN DE DISPOSITIVO 
 
       Aunque  los  zócalos  ZIF  con  los  que  cuenta  nuestro  GM  PICPROGRAM  v2.61  solo 
admite dispositivos de 8, 14, 18, 20, 28 y 40 patillas de las familias PIC12, PIC16 y PIC18, lo 
cierto  es  que  tenemos  a  nuestra  disposición  el  conector  ICSP  y  el  ICD2  los  cuales 
transportan  todas  las  señales  necesarias  para  la  grabación  en  circuito  (In‐Circuit 
Programming) de cualquier otro dispositivo para cualquier familia, bastara con realizar las 
conexiones necesarias según la siguiente tabla: 
 
 
N° PIN  SEÑAL  DESCRIPCION 
1  MCLR/Vpp  Señal Vpp de grabación 
2  VDD  Alimentación +VDD 
3  GND  Tierra de alimentación 
4  PGD  Señal de datos 
5  PGC  Señal de reloj 
6  NC  No conectada 
Fig. 21 
 
       Esta característica es muy importante para el usuario de nuestro grabador puesto que 
mediante los terminales ICSP e ICD2  podrán grabar un gran número de dispositivos PIC de 
cualquiera de las familias existentes en la actualidad. 
        
       En  cualquier  momento  podemos  seleccionar  un  dispositivo  PIC  de  las  diferentes 
familias existentes, bastara con seleccionar la opción “Device Family” del menú principal 
para  que  aparezca  un  menú  desplegable  como  en  la  figura,  donde  seleccionaremos  la 
familia deseada o en nuestro caso podemos realizar la siguiente operación: 
 
‐ Colocamos  el  microcontrolador  en  el  zócalo  ZIF  de  28/40  pines  en  este  caso  el 
dispositivo  16F877A  y  vamos  al  menú  del  software  PICkit2ÆToolsÆCheck 
Communication. 
 
 

 
5  EL SOFTWARE DE GRABACION PICkit2                                                      19               
 
 

 
Fig. 22 
 
5.4  IMPORTAR UN FICHERO HEX 
 
       Como  ya  es  sabido,  cada  vez  que  se  ensambla  o  compila  un  programa  fuente,  se 
obtiene un fichero .HEX que contiene la información que hay que grabar sobre la memoria 
de programa, memoria de datos y memoria de configuración del microcontrolador. 
 
       Mediante  File  Æ  Import  Hex  se  abre  la  clásica  caja  de  dialogo  que  nos  permitirá 
localizar el fichero .HEX deseado. Una vez seleccionado cargamos su contenido sobre los 
buffers  de  memoria  del  software  PICkit2  para  su  posterior  grabación  sobre  la  memoria 
física del controlador. Tal y como se muestra en la figura, en ella se puede apreciar que 
tanto el buffer de la memoria de programa como el de la EEPROM de datos, se llena con el 
contenido  del  fichero  .HEX  recién  leído  o  importado,  si  todo  esta  correcto  se  deberá 
mostrar el mensaje: “Hex file sucessfully imported.” 
 
        El  contenido  de  dichos  buffers  se  puede  visualizar  tanto  en  hexadecimal  como  en 
ASCII y también se puede modificar manualmente.      
 

 
5  EL SOFTWARE DE GRABACION PICkit2                                                     20               
 
 
       También tenemos acceso a la memoria de configuración haciendo clic sobre el enlace 
“Configuration”.  La  figura  muestra  el  valor  actual,  en  binario,  de  la    o  las  palabras  de 
configuración  del  PIC  16F877A  tal  y 
como se obtuvo al leer el fichero .HEX de 
ejemplo. 
 
       Al  igual  que  con  los  buffers  de  la 
memoria  de  programa  y  memoria  de 
datos,  el  buffer  de  la  memoria  de 
configuración  también  se  puede 
modificar manualmente. 
 
       También es posible crear y salvar un 
fichero  .HEX  con  el  valor  actual  de  los 
buffers de memoria del software PICkit2 
con  todas  las  modificaciones  realizadas 
sobre  ellos,  bastara  con  ejecutar:  FileÆ 
Export  Hex  para  que  se  abra  la  clásica 
ventana  de  dialogo  para  seleccionar  el 
nombre  y  la  carpeta  donde  se  va  a 
guardar  el  archivo  .HEX  que  se  va  a 
guardar. 
 
                                                           Fig. 23  
 

 
Fig. 24 
 
       También es posible crear y salvar un fichero .HEX con el valor actual de los buffers de 
memoria del software PICkit2 con todas las modificaciones realizadas sobre ellos, bastara 
con  ejecutar:  FileÆ  Export  Hex  para  que  se  abra  la  clásica  ventana  de  dialogo  para 
seleccionar  el  nombre  y  la  carpeta  donde  se  va  a  guardar  el  archivo  .HEX  que  se  va  a 
guardar. 
 
 
 
5  EL SOFTWARE DE GRABACION PICkit2                                                     21               
 
5.5  GRABACIÓN DEL DISPOSITIVO 
 
       Una vez que el microcontrolador es insertado en el zócalo ZIF correspondiente y  es 
detectado  por  el  software  de  control  PICkit2  debemos  importar  el  archivo  .HEX,  para 
proceder a  grabarlo, las principales funciones se muestran en la figura a continuación. 
 

 
Fig. 25 
 
Read:    Permite leer la memoria del microcontrolador y el contenido lo copia sobre los 
buffers de memoria del software PICkit2. 
 
Write:    Lee el contenido de los buffers de memoria del software PICkit2 y los graba sobre 
la memoria física del microcontrolador. 
 
Verify:     Verifica que el contenido de los buffers sea el mismo que el contenido del PIC. 
 
Erase:       Borra tanto los buffers de memoria del software PICkit2 como la memoria física 
del microcontrolador. 
 
Blank Check:    Comprueba que la memoria del microcontrolador este borrada. 
 
        Hacemos  clic  en  la  función  “Write”  para  proceder  a  grabar  el  controlador  con  el 
contenido de los buffers, previo borrado del mismo. En la ventana de estado tendremos 
constancia  de  si  ha  habido  algún  problema  o  bien  el  ciclo  de  grabación  se  realizo 
correctamente. 

 
Fig. 26 
         Nuestro  grabador  PICPROGRAM  v2.61  posee  un  botón  “PROGRAMAR”  con  el  cual 
una  vez  importado  el  archivo  .HEX    usted  podrá  grabar  (previa  configuración) 
directamente el programa en el microcontrolador sin necesidad de hacer clic en la función 
“Write”. 
 
 
 
 
 
 
 
Fig. 27 
5  EL SOFTWARE DE GRABACION PICkit2                                                     22               
 
5.6  VERIFICANDO EL DISPOSITIVO 
 
        Esta  función  se  ejecuta  al  hacer  clic  en  “Verify”.  Consiste  en  comprobar  que  el 
contenido  de  las  memorias  o  regiones  del  controlador  coincide  con  el  de  los  buffers  de 
memoria del software PICkit2: memorias de programa, memoria de datos en EEPROM y 
memoria de configuración e identificación. 
 
        Si  se  encuentra  activada  la  opción  Programmer  Æ  Verify  on  Write,  todas  las 
operaciones  de  escritura  son  verificadas  automáticamente.  En  la  ventana  de  estado 
aparecerá  el  correspondiente  mensaje  que  avisa  si  hay  o  no  alguna  diferencia  en  la 
comprobación. 
 
 
 
 
        
 
Fig. 28 
5.7  LECTURA DEL DISPOSITIVO 
 
       Esta  función  se  ejecuta  al 
hace clic en “Read”. Consiste en 
leer  las  diferentes  regiones  o 
aéreas  de  memoria  del 
controlador y copiarlas sobre los 
correspondientes  buffers  de 
memoria del software PICkit2.  
 
       Si  la  información  leída  es 
correcta,  es  posible  que  el 
guardar  dicha  información 
exportando  la  información 
almacenada  en  los  buffers  de 
memoria como un archivo .HEX, 
en  este  caso  los  datos  leídos  
serán  validos.  Si  la  información 
leída  es  solo  ceros,  como  se 
muestra  en  la  figura,  es  posible 
que  el  microcontrolador  
estuviera  protegido.  En  este 
caso  los  datos  leídos  no  serán 
validos.                                     Fig. 29 
 
 
 
5  EL SOFTWARE DE GRABACION PICkit2                                                     23               
 
5.8  BORRADO DEL DISPOSITIVO 
 
       Esta  función  se  ejecuta  al  hacer  clic  en  “Erase”.  ¨Provoca  el  borrado  de  todas  las 
regiones  o  aéreas  de  memoria  del  controlador  empleando  para  ello  el  método  “Bulk 
Erase” en aquellos microcontroladores en que sea posible. 
 

 
Fig. 30 
       Normalmente no suele ser necesario el empleo de esta función ya que cada vez que se 
graba un dispositivo, implica su borrado automático. 
 
5.9  VERIFICANDO EL BORRADO 
 
       Esta función se ejecuta al hacer clic en “Blank Check”. Realiza una lectura de todas las 
regiones de memoria del microcontrolador para comprobar que se encuentran borradas. 
 
5.10  PROCEDIMIENTO AUTOMÁTICO DE LECTURA/ESCRITURA 
 
       En la figura siguiente se muestran las dos opciones que posee el software PICkit2 para 
realizar múltiples funciones cada vez que se actúa sobre cualquiera de ellos. 
  

 
Fig. 31 
 
‐ Auto Import Hex + Write Device      
 
       Cada  vez  que  se  hace clic  sobre  esta  opción  aparece  el  clásico  cuadro  de  dialogo  de 
Windows  mediante  la  cual  podemos  localizar  el  fichero  .HEX  deseado.  Una  vez 
seleccionado,  automáticamente  se  procede  a  grabar  el  contenido  del  mismo  sobre  la 
memoria física del microcontrolador. 
 
‐ Read Device + Export Hex File      
 
       Cada  vez  que  se  acciona  se  lee  el  contenido  actual  de  alas  diferentes  regiones  de 
memoria del microcontrolador y automáticamente se guarda en un fichero .HEX. 
 
6  EL MODO DEPURACION                                                                               24               
 
6   EL MODO DEPURACION 
 
       Como  se  explico  anteriormente  el  PICPROGRAM  v2.61  no  es  simplemente  un 
grabador  es  tambien  un  depurador  en  circuito,  lo  que  lo  convierte  en  una  herramienta 
fundamental para el diseño de un programa de aplicación del usuario. 
 
       Básicamente la depuración en circuito consiste en poder controlar la ejecución de un 
programa  dentro  del  PIC  estando  el  mismo  conectado  a  los  periféricos  de  la  aplicación. 
Para ello es necesario que el propio PIC disponga internamente de los recursos necesarios 
para  la  depuración.  Se  debe  tener  en  cuenta  que  no  todos  los  microcontroladores  PIC 
tienen  la  propiedad  de  depuración,  especialmente  los  modelos  más  antiguos  como  el 
popular 16F84 (ver lista de dispositivos soportados por el PICPROGRAM v2.61). 
 
       Durante la depuración es necesario que el PIC reciba una serie de órdenes y comandos 
procedentes  del  software  de  desarrollo.  De  la  misma  manera,  en  el  curso  de  la 
depuración, el PIC puede enviar al software de desarrollo información sobre el estado de 
sus registros internos, memoria RAM, etc.  
 
       Es por ello que algunas líneas de E/S del PIC no pueden ser usadas por el hardware de 
la aplicación del usuario ya que se emplean para la comunicación con la PC. La depuración 
en  circuito  suele  necesitar  de  3  señales:  MCLR,  RB7/PGD,  RB6/PGC.  Por  tanto  estas 
señales  no  deben  conectarse  a  ningún  periférico  o  bien,  mediante  algún  sistema  de 
conmutación  desconectarlas  de  esos  periféricos  durante  el  proceso  de  depuración,  esta 
función la cumple el modulo de programación/emulación.  

 
Fig. 32  Modulo de Programación/Emulación. 
 
       Cada modulo posee un conmutador para seleccionar los modos Program (PGR) y Run 
(RUN).  Si  se  desea  programar  el  microcontrolador  se  deberá  ajustar  el  conmutador  a  la 
posición  PGR,  si  deseamos  ver  el  funcionamiento  de  nuestro  programa  en  el  circuito  de 
pruebas debemos ajustar el conmutador a la posición RUN, tal como muestra la figura. 
  
 
 
       
                          Fig. 33  Modo Programador/Debugger                 Modo Ejecución 
6  EL MODO DEPURACION                                                                               25               
 
 
       Cuando  el  conmutador  de  la  tarjeta  de  emulación  se  pone  en  RUN  las  señales  se 
desconectan del depurador y se conectan con los periféricos en modo de ejecución.  
 
       Por los mismos motivos es posible que el sistema de depuración consuma algo de la 
memoria de programa, de datos, pila de stack, etc. Lo debemos tener en cuenta a la hora 
de desarrollar nuestros programas y respetar las zonas que estuvieran reservadas. 
 
 

 
Fig. 34  Conexión GM PICPROGRAM v2.61 vía ICD2 (Modo Depurador) 
 
       Incluso es posible que algunas prestaciones del depurador puedan verse modificadas 
en función al tipo de microcontrolador con el que estemos trabajando. Así, hay modelos 
que  admiten,  por  ejemplo  hasta  3  puntos  de  parada  o  breakpoints,  y  otros  admiten 
simplemente uno.  

 
       A pesar de las restricciones comentadas, consideramos que la depuración en circuito 
mediante  nuestro  grabador  PICPROGRAM  v2.61  es  una  extraordinaria  solución,  una 
potente y económica herramienta que nos ayudara a depurar nuestros programas.  
 
     6  EL MODO DEPURACION                                                                               25               
 
 
       Existen en el mercado otras soluciones como son el empleo de emuladores. Estos no 
tienen restricciones de ningún tipo pero su precio se eleva a varios cientos de dólares. 
 
       Si no se cuenta con un modulo de emulacion/programación se puede acceder al modo 
depurador  mediante  el  terminal  ICSP.  A  continuación  se  muestra  la  conexión  necesaria 
para acceder al modo depurador mediante el terminal ICSP. 
 

 
Fig. 35  Conexión GM PICPROGRAM v2.61 vía ICSP (Modo Depurador) 
 
       Para  acceder  al  modo  depurador  el  microcontrolador  deberá  tener  todos  sus 
periféricos  conectados,  así  como  la  circuitería  mínima  para  su  funcionamiento  real,  el 
microcontrolador  deberá  ser  alimentado  con  una  fuente  externa  dependiendo  del 
consumo del circuito de prueba. 
 
       Como software de desarrollo empleamos el MPLA IDE, este permite el enlace entre el 
PICPROGRAM v2.61 y el microcontrolador a depurar. Gracias a él tendremos la posibilidad 
de actuar internamente sobre el microcontrolador, para ejecutar un programa en tiempo 
real, detener la ejecución, poner puntos de ruptura de forma que la ejecución se detenga 
al llegar a un punto de nuestro programa, ejecutar paso a paso una instrucción cada vez 
siguiendo así el flujo del programa, visualizar y modificar los registros internos, visualizar y 
modificar la memoria RAM interna, etc.   
 
       Todo  ello  con  un  único  fin  el  de  localizar  fallos  en  nuestro  programa,  corregirlos  y 
ponerlo  a  punto  en  el  mínimo  tiempo  posible,  antes  de  proceder  a  grabarlos 
definitivamente sobre el microcontrolador. 
 
6  EL MODO DEPURACION                                                                               25               
 
      
       En  el  presente  documento  consideramos  que  se  dispone  del  microcontrolador 
insertado en un circuito de pruebas (breadboard) y que el mismo cuenta con la circuitería 
mínima  necesaria  para  su  funcionamiento  real,  este  circuito  estará  conectado  a  nuestro 
PICPROGRAM v2.61 mediante el cable ICSP proporcionado. 
 
NOTA: Para que  el microcontrolador trabaje en modo depurador ya sea mediante el terminal ICD2 
o el ICSP se deberá ajustar el JUMPER T/B a la posición “B”.  
 
6.1 SELECCIONANDO EL DISPOSITIVO 
 
       Para  comenzar  a  trabajar,  lo  primero  que  haremos  sera  abrir  el  MPLAB  IDE  y 
seleccionar el modelo de microcontrolador PIC con el que vamos a trabajar tal y como se 
hizo en el apartado 4.2 mediante Configure Æ Select Device.  
 
       Este debe coincidir con el que en ese momento este insertado en el grabador o en el 
hardware de la aplicación del usuario, para el ejemplo seleccionamos el PIC16F877A. 
 
6.2 SELECCIONANDO EL DEPURADOR 
 
       El  software  de  desarrollo  MPLAB  IDE  admite  diferentes  tipos  de  herramientas 
hardware para realizar la emulación o depuración. En nuestro caso, tal y como muestra la 
figura seleccionaremos el PICkit2 mediante: DebuggerÆ Select ToolÆPICkit2. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig. 36 
 
NOTA:  MPLAB  IDE  solo  admite  al  PICkit2  (por  tanto  a  PICPROGRAM  v2.61)  trabajando  como 
emulador  o  como  grabador,  pero  nunca  ambos  al  mismo  tiempo.  Si  estuviera  activado  como 
grabador se debe desactivar mediante: Programmer Æ Select Programmer Æ None. 
 
6  EL MODO DEPURACION                                                                               26               
 
 
       En la ventana Output de salida, se mostrara  una serie de mensajes que nos indican 
que  se  ha  localizado  e  identificado  tanto  el  PICkit2  (PICPROGRAM  v2.61)  como  el 
microcontrolador sobre el que se hará la depuración, ver figura. 
 

 
Fig. 37 
NOTA:  A  partir  de  este  momento  no  es  conveniente  cambiar  el  dispositivo  seleccionado  para  la 
depuración  (en  este  caso  PIC16F877A)  mediante:  ConfigureÆ  Select  Device,  ya  que  se  pueden 
provocar  errores  de  funcionamiento.  En  caso  de  ser  necesario,  primero  hay  q  desactivar  el 
depurador  mediante:  DebuggerÆSelect  ToolÆNone.  A  continuación  se  selecciona  el  nuevo 
dispositivo PIC. Este deberá insertarse en la tarjeta de emulación. Por último se vuelve a activar el 
PICkit2 (PICPROGRAM v2.61) mediante: DebuggerÆ Select ToolÆPICkit2.  
 
6.3 FUNCIONES MAS COMUNES EN LA DEPURACION 
 
       Una  vez  se  ha  seleccionado  el  PICkit2  (compatible  con  nuestro  grabador)  como 
herramienta de depuracion, se activan todas las funciones disponibles realacionadas con 
la depuracion y que se encuentran en el menu “Debugger” del menu principal, tal y como 
se muestra en la figura. 
 
 
       La  primera  de  las  opciones  es 
“Select  Tool”,  es  la  que  ya  hemos 
empleado  para  seleccionar,  de  entre 
todas  las  disponibles,  el  PICkit2 
(PICPROGRAM  v2.61)  como 
herramienta  de  depuracion.  A 
continuacion  detallamos  las  opciones 
restantes. 
 
 
 
 
 
Fig. 38 
 
 
 
6  EL MODO DEPURACION                                                                            27               
 
6.3.1  CLEAR MEMORY 
 
           Borra  las  diferentes  regiones  o  areas  de  memeoria  que  se  emplean  durante  la 
depuracion  y  que  se  pueden  seleccionar  mediante  el  menu  desplegable  como  el 
mostraddo en la figura. All Memory borra todas las regiones, Program Memory borra solo 
la  memoria  de  programa.  GPRs  borra  la  memoria  RAM  de  datos,  EEPROM  borra  la 
memoria EEPROM de datos y Configuration Bits borra la palabra de configuracion. 
 

 
Fig. 39 
 
            Estas  regiones  de  memoria  del  MPLAB  IDE  se  pueden  visualizar  o  modificar 
mediante el comando View del menu principal y se corresponden con las  regiones o areas 
de memoria fisica del PIC. 
 
6.3.2  RUN 
 
           Ejecuta en tiempo real las instrucciones que en ese momento se encuentren en la 
region  o  area  de  memoria  de  programa,  dichas    instrucciones  forman  el  programa 
ejecutable  que  se  habra  obtenido  en  el  ultimo  ensamblado  realizado,  o  bien,  como 
consecuencia  de  haber  abierto  un  fichero  .HEX  cuyo  contenido  se  ha  de  grabar 
previamente en el microcontrolador.  
 
            La ejecucion en tiempo real significa que el programa se ejecuta de forma continua 
hasta que se detenga manualmente o se encuentre con un punto de parada o BreakPoint. 
 
6.3.3  ANIMATE 
 
           Ejecuta en tiempo real las instrucciones que en ese momento se encuentren en la 
region  o  area  de  memoria  de  programa,  dichas    instrucciones  forman  el  programa 
ejecutable  que  se  habra  obtenido  en  el  ultimo  ensamblado  realizado  o  bien,  como 
consecuencia  de  haber  abierto  un  fichero  .HEX  cuyo  contenido  se  ha  de  grabar 
previamente en el dispositivo. En este tipo de ejecucion el programa se ejectua de forma 
continua  hasta  que  se  detenga  manualmente o  se  encuentre  con  un  punto  de  parada  o 
BreakPoint,  sin  embargo  con  cada  instrucción  que  se  ejecuta,  nuestro  depurador 
PICPROGRAM v2.61 envia al  
     
6  EL MODO DEPURACION                                                                            28               
 
MPLAB IDE el valor actual de los registros internos del PIC de forma que las ventanas de la 
memoria  de  programa,  datos,  etc.  del  MPLAB  IDE  se  actualizan  y  resfrescan 
constantemente con cadad instrucción del programa ejecutado (Animacion). 
       Este  modo  de  ejecucion  no  tiene  un  gran  interes  ya  que  la  misma  no  es  en  tiempo 
real, efectivamente con cada instrucción ejecutada, el depurador envia al MPLAB IDE una 
gran cantidad de informacion que este ha de visualizar en las correspondientes ventanas, 
ralentizando asi el tiempo de ejecucion. 
 
6.3.4  HALT 
 
         Esta funcion incialmente queda habilitada si el sistema se encuentra en el modo Run 
O en el modo Animate anteriormente descritos. Su proposito es detener manualmente la 
ejecucion del programa en el punto en que en ese momento se encuentre. 
 
6.3.5  STEP INTO 
 
        Cada  vez  que  se    emplea  este  comando  se  procede  a  la  ejecucion  de  la  siguiente 
instrucción del programa y el sistema se detiene. Es decir, se ejecuta una instrucción cada 
vez, paso a paso. Por cada instrucción ejecutada, el PICPROGRAM v2.61 envia informacion 
al MPLAB IDE con la que se actualizan todos los registros de todas las areas o regiones de 
memoria con los valores internos actuales del PIC. 
 
       Esta  es  una  de  las  funciones  especialmente  utiles  en  la  fase  de  depuracion  de 
cualquier  programa.  Podemos  ir  ejecutando  las  instruciones  una  a  una  ,  a  la  vez  que 
vamos viendo los resultados obtenidos en los registros de las diferentes areas o regiones 
que visualiza el MPLAB IDE y que se vean afectados por la instrucción recien ejecutada. 
 
       El MPLAB IDE tambien permite modificar manualmente cualquiera de los registros de 
estas regiones. De esta forma podemos cargar cualquier registro o variables con cualquier 
valor  y  este  sera  tenido  en  cuenta  y  se  evaluara  al  ejecutar  la  siguiente  instrucción  del 
programa. 
 
       Sugerimos tener abierta unicamente la ventana Watch mediante el comando ViewÆ 
Watch.  La  figura  muestra  un  ejemplo  de  la  misma.  Sobre  esta  ventana  podemos  indicar 
únicamente que registros del PIC y que variables RAM queremos refrescar para visualiza o 
modificar sus contenidos. 
 

 
    6  EL MODO DEPURACION                                                                            29               
 
 

 
Fig. 40 
 
       En el ejemplo se refrescan los registros internos WREG, PORTA y PORTB, así como las 
variables del programa MSE_Delay_1 y MSE_Delay_2. 
 
6.3.6  STEP OVER 
 
       La tarea de depuracion de un programa puede ser a veces muy tediosa ya que hay que 
analizar  al  100%  el  comportamiento  de  ese  programa.  La  ejecucion  paso  a  paso  es  la 
herramienta mas versatil a la hora de localizar un fallo, pero tambien la que mas tiempo 
nos puede llevar. 
 
       La mayor parte de las veces los programas contiene subrutinas que se deben ejecutar 
en multiples ocasiones. Es posibles que el funcionamiento de una subrutina lo tengamos 
que verificar paso a paso la primero vez, tal y como se explico anteriormente, pero seria 
poco practico que haya que verificarla tantas veces como el programa principal haga uso 
de la misma. 
 
       La  funcion  Step  Over  nos  evita  esta  aburrida  tarea,  efectivamente,  esta  funcion  se 
comporta de forma similar a la funcion Step Into que vimos antes, ejecuta un programa 
paso a paso. La diferencia consiste en que si se trata de ejecutar la instrucción de llamada 
a subrutina (CALL), todas las instrucciones que esta contiene se ejecutan en tiempo real. 
La parada se produce justo despues del retorno de la misma. 
 
         Ahorraremos  mucho  tiempo  de  depuracion  si,  uan  vez  comprobado  el  correcto 
funcionamiento  de  una  subrutina,  la  ejecutamos  en  tiempo  real  o  cada  vez  que  sea 
llamada por el programa principal. 
 
6.3.7  STEP OUT 
 
       Esta  funcion  solo  estara  habilitada  para  aquellos  dispositivos  PIC  o  herramientas 
hardware que sean capaces de soportarla. 
 
        
     
 
6  EL MODO DEPURACION                                                                            30               
 
 
       Si la ejecucion paso a paso de un programa nos lleva a introducirnos en una subrutina, 
esta funcion permite realizar la ejecucion delas intrucciones que la componen en tiempo 
real, desde el punto en el que en ese momento se encuentre hasta la instrucción de fin de 
subrutina (RETURN). 
 
6.3.8  RESET  
 
        Esta funcion genera un RESET del sistema haciendo que el Contador de Programa (PC) 
del    PIC  apunte  a  la  primera  intruccion  del  programa  a  ejectuar,  justo  tras  el  vector  de 
RESET. 
 
       El efecto que produce su empleo se puede apreciar claramente si tenemos abierta la 
ventana  de  nuestro  programa  fuente  (ASM  o  C)  debidamente  ensamblado/compilado  y 
que  se  carga  mediante    FileÆ  Open.  También  se  puede  apreciar  sobre  la  ventana  de 
memoria de programa que se abre mediante ViewÆ Program Memory. La figura muestra 
ambas ventanas. 
 
       En  la  parte  superior  vemos  la  ventana  que  nos  muestra  un  fragmento  del  programa 
fuente en ASM. En la parte inferior vemos la ventana de la memoria de programa con el 
mismo fragmento pero debidamente ensamblado y convertido a código ejecutable. 
 
       En ambos casos, a la izquierda, se aprecia una flecha verde que apunta a la instrucción 
que  toca  ejecutar  justo  tras  haber  producido  el  RESET  y  que  se  corresponde  con  la 
siguiente instrucción a la del vector RESET.  
 
       Esa flecha simboliza al Contador de Programa (PC) y apunta a la instrucción que toca 
ejecutar. Si se ejecuta en tiempo Real (Run), la ejecución se inicia a partir de esa posición. 
Si se detiene la ejecución (Halt) la flecha aparecerá justo en la siguiente instrucción donde 
se produjo la detención y que sería la siguiente en caso de reanudación. 
 
      Si  se  ejecuta  en  modo  animado  (Animate)  veremos  claramente  como  la  flecha  va 
evolucionando  instrucción  tras  instrucción  a  lo  largo  del  programa  hasta  que  este  sea 
detenido. 
 
      En la ejecución paso a paso veremos que la flecha avanza a la siguiente instrucción a 
ejecutar, cada vez que se emplea Step Into. 
 
 
 
 
 
 
 
6  EL MODO DEPURACION                                                                        31               
 
 

 
Fig. 41 
 
6.3.9    BREAKPOINTS 
 
       Los puntos de parada o Breakpoints constituyen otra importante herramienta para la 
depuracion  y  puesta  en  marcha  de  los  programas  de  aplicacion.  Consiste  en  establecer 
uno o varios puntos en los que debe detenerse la ejecucion en tiempo real del programa, 
al  llegar  a  ellos,  momento  en  el  que  se  actualizan  todos  los  registros  y  regiones  de 
memoria  sobre  las  correspondientes  ventanas  del  MPLAB  IDE.  Esto  permite  comprobar, 
de  forma  rapida  y  eficaz,  como  funciona  y  reacciona  un  determinado  bloque  de 
instrucciones del programa de aplicación. 
 
       Para  establecer  un  punto  de  parada,  basta  con  hacer  doble  clic  sobre  la  instrucción 
deseada. Podemos emplear para ello tanto la ventana con el programa fuente (ASM o C) 
como la ventana del area de programa. 
 
       En la figura vemos ambas ventanas. Se hizo un doble clic sobre la instrucción “GOTO 
ARRIBA”. Un circulo rojo a la izquierda de la instrucción nos recuerda que hay un punto de 
parada (Se emplea el mismo metodo para eliminarlo). 
 
       A la vista de la figura se puede determinar que el inicio de la ejecucion se realizara a 
partir  de  la  instrucción  “BSF  PORT_B,  0”  (flecha  verde)  y  se  detendra  despues  de  la 
instrucción 
 
        6  EL MODO DEPURACION                                                                        32               
 
 
instruccion  “GOTO  ARRIBA”  (circulo  rojo).  Ambas  ventanas  son  equivalentes  y  reflejo  la 
una de la otra. 
 

 
Fig. 42 
       Segun el modelo de PIC que estemos empleando es posible que aparezca un mensaje 
como  el  mostrado  el  la  figura  siguiente.  Con  este    mensaje  nos  recuerda  que  el 
PICPROGRAM v2.61 depurando sobre un PIC16F877A solo dispone de un BreakPoint, por 
lo que algunas otras operaciones pueden quedar deshabilitadas. Estas son algunas de las 
limitacions  del  PICkit2  (y  por  tanto  del  PICPROGRAM  v2.61)  de    las  que  se  hablo  al 
principio de este apartado. 

 
Fig. 43 
 
      Ahora  basta  con  ejecutar  el  programa  que  podemos  hacerlo  en  tiempo  real  (Run). 
Todas las instrucciones comprendidas entre la posicion actual de la PC (flecha verde) y el 
cierculo  rojo  (breakpoint)  se  ejecutaran  en  tiempo  real,  a  la  velocidad  propia  del 
controlador. 
6  EL MODO DEPURACION                                                                        33               
 
       
       La  ejecucion  se  detiene  justo  despues  del  punto  de  parada.  En  ese  momento  las 
ventanas del MPLAB IDE se actualizaran con el valor de los registros internos y variables 
del programa del PIC tras haberse ejecutado ese trozo de programa. 
 
      Ya hemos dicho que establecer un punto de parada es tan sencillo como hacer doble 
clic sobre la instrucción del programa en la que deseamos detener la ejecucion. El mismo 
proceso  se  emplea  para  eliminarlo.  No  obstante  mediante  el  uso  del  comando 
DebbugerÆ Breakpoints del menú principal obtenemos una ventana de edición como la 
mostrada en la figura. En ella podemos visualizar el lugar en que se encuentra cada punto 
de parada. 
 
      También es posible activarlos, desactivarlos y borrarlos tanto de forma individual como 
colectiva.  Finalmente  también  nos  informa  cuantos  Breakpoint  se  pueden  colocar  y 
cuantos quedan disponibles.        
       

 
Fig. 44 
 
6.3.10  ADVANCED BREAKPOINTS 
 
       Esta  opcion  esta  destinada  a  las  herramientas  hardware  de  alto  nivel  para  la 
emulacion en tiempo real como son el ICE2000 y el ICE4000. No funciona por tanto con 
nuestro depurador PICkit2 (PICPROGRAM v2.61), esta deshabilitada. 
 
      Los  Breakpoints  avanzados  permiten  estacler  muchas  y  complejas  condiciones  de 
parada dutant la emulacion/depuracion del programa de aplicación del usuario. Puntos de 
parada no solo basados en la direccion de una instrucción como se vio anteriormente. 
 
 
         
6  EL MODO DEPURACION                                                                        34               
 
 
       Permite establecer condiciones tales como ”Cuando la PC se encuentre en la direccion 
X, se este realizando un ciclo de escritiura sobre la posicion Y de memoria RAM, el valor del 
registro Z sea igual a 0x033 y esta condicion se repita 18 veces”, entonces se produce la 
parada y la ejecucion se detiene. 
 
6.3.11  PROGRAM 
 
     Esta  opcion  permite  grabar  directamente  el  contenido  de  las  distintas  areas  de 
memoria del MPLAB IDE sobre las correspondientes regiones de la memoria fisica del PIC. 
Es especialmente util para grabar la informacion directamente importada desde un fichero 
.HEX. 
     Efectivamente, con esta opcion no es necesario abrir un programa fuente (ASM o C) ni 
ensamblarlo  o  compilarlo.  Basta  con  abrir  un  fichero  .HEX  mediante  FileÆ  Import,  que 
contenga la información a grabar. 
 
6.3.12  READ 
 
       Es la opuesta a la anterior. Lee el contenido de las diferentes regiones de memoria del 
PIC y lo deposita sobre las correspondientea areas de memoria del MPLAB IDE. 
 
       Mediante FileÆ Export podemos guardar la información recién leída sobre un fichero 
.HEX. 
 
6.3.13  READ EEDATA 
 
        Procede a la lectura de la region de memoria EEPROM del PIC y la deposita sobre la 
correspondiente  area  o  buffer  del  MPLAB.  El  contenido  recien  leido  se  puede  visualizar 
activando  la  correspondiente  ventan  mediante  la  opcion  ViewÆ  EEPROM  del  menú 
principal. 
 
6.3.14  CONNECT 
 
        Restablece de nuevo la conexion con el depurador seleccionado, en nuestro caso el 
PICkit2  (compatible  con  el  PICPROGRAM  v2.61).  Esta  operación  puede  ser  necesario 
realizarla  en  varias  ocasiones  ya  que  a  veces  el  sistema  se  puede  colgar  durante  la 
transferencia de informacion hacia y desde la PC y el microcontrolador en depuracion. 
 
6.3.15  DOWNLOAD OS 
 
       Actualiza el firmware interno del PICkit2 (PICPROGRAM v2.61). Esta operación puede 
ser necesaria cuando se descargue una version actualizada del propio MPLAB IDE. 
 
 
 
6  EL MODO DEPURACION                                                                        35               
 
6.3.16  SETTINGS 
 
       Con esta opcion se abre una ventana similar a la mostrada en la figura anterior y que 
permite  activar  o  no  una  serie  de  procesos  internos.  En  la  pestaña  “Settings”  hemos 
elegido los dos que consideramos mas importantes: 
 
‐ Conectar automaticamente al empezar. Cada vez que se selecciona el depurardor 
PICkit2  se  procede 
automaticamente  a  la  conexión 
con  el  mismo.  En  caso  contrario 
hay  que  ejecutar  manualmente  el 
comando Debugger Æ Connect. 
 
‐ Programar  automaticamente  el 
controlador  si  no  hay  errores  de 
ensamblado/compilado.  Esta 
opcion  es  muy  interesante.  Cada 
vez  que  ensamblamos  nuestro 
programa fuente, si no hay errores, 
se  procede  a  grabar  el  dispositivo 
con  el  programa  ejecutable  recien 
obtenido quedando asi listo para la 
depuracion.  Si  no  se  activa  esta 
opcion,  la  grabacion  habra  que 
hacerla  manualmente  mediante  el 
comando Debugger Æ Program.  
 
                                                                                                                   Fig. 45 
 
       En la pestaña “Warnings” tenemos la posibilidad de activar o no los mensajes y avisos 
que deseamos que aparezcan si se producen determinados eventos. 
   
6.4  ICONOS EMPLEADOS EN LA DEPURACIÓN 
 
       La mayor parte de las opciones del menú “Debugger” se pueden ejecutar mediante 
una serie de iconos de acceso directo como los mostrados en la figura y que ya se han 
explicado anteriormente. 
 
 
 
 
 
 
 
 
        6  EL MODO DEPURACION                                                                        36               
 
 
 
 

 
Fig. 46 
 
 
       De izquierda a derecha su función se detalla a continuación: 
 
‐ Run: Ejecución en tiempo real del programa. 
‐ Halt: Detener la ejecución. 
‐ Animate: Ejecución con animación. 
‐ Step Into: Ejecución con animación. 
‐ Step Over: Ejecución paso a paso y las subrutinas en tiempo real. 
‐ Step Out: Salir de una subrutina ejecutando en tiempo real. 
‐ Reset: Reinicio del controlador. 
‐ Breakpoints: Visualiza el estado de los puntos de parada. 
‐ Program the target Device: Programar el controlador. 
‐ Read target Device memories: Leer el contenido del controlador. 
‐ Read  the  target  EEDATA  memory:  Lee  el  contenido  de  la  memoria  EEPROM  del 
controlador. 
‐ Connection: Restablece la conexión entre el MPLAB IDE y el PICkit2. 
‐ Advanced  Breakpoint:  Acceso  a  los  breakpoints  avanzados  (no  disponible  en 
PICkit2/ PICPROGRAM v2.61) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 7  DISPOSITIVOS ADMITIDOS POR GM PICPROGRAM v2.61                37               
 
7.1 MODO GRABADOR 
 
       A continuación adjuntamos una lista de los dispositivos soportados en modo grabador 
por PICPROGRAM v2.61 compatible con PICkit2. Para más información visite el siguiente 
sitio web:  
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en027813 

Gama Baja

• PIC10F200, 202, 204, 206


• PIC10F220, 222
• PIC12F508, 509, 510, 519
Gama Alta

• PIC16F505, 506, 526


Dispositivos PIC18F
• PIC16F54, 57, 59

Gama Media Las versiones ‘LF’ de todos los dispositivos son soportadas.
Las versiones ‘LF’ de todos los dispositivos son soportadas.

• PIC18F242, 252, 442, 452


• PIC12F609, HV609
• PIC18F248, 258, 448, 458
• PIC12F615, HV615
• PIC18F1220, 1320, 2220, 2320
• PIC12F617
• PIC18F1230, 1330
• PIC12F629, 635, 675, 683
• PIC18F2221, 2321
• PIC16F610, HV610
• PIC18F2331, 2410, 2420, 2431
• PIC16F616, HV616
• PIC18F2423
• PIC16F627, 628
• PIC18F2450, 2455, 2458, 2480
• PIC16F627A, 628A, 648A
• PIC18F2510, 2515, 2520, 2523
• PIC16F630, 631, 636, 639, 676
• PIC18F2525
• PIC16F677, 684, 685, 687
• PIC18F2550, 2553, 2580, 2585
• PIC16F688, 689, 690
• PIC18F2610, 2620, 2680
• PIC16F707
• PIC18F2682, 2685
• PIC16F72
• PIC18F4220, 4221
• PIC16F73, 74, 76, 77
• PIC18F4320, 4321, 4331
• PIC16F720, 721
• PIC18F4410, 4420, 4423
• PIC16F722
• PIC18F4431, 4450, 4455
• PIC16F723, 724, 726, 727
• PIC18F4458, 4480
• PIC16F722A, 723A
• PIC18F4510, 4515, 4520, 4523
• PIC16F716
• PIC18F4525, 4550, 4553, 4580
• PIC16F737, 747, 767, 777
• PIC18F4585
• PIC16F785, HV785
• PIC18F4610, 4620, 4680
• PIC16F84A, 87, 88
• PIC18F4682, 4685
• PIC16F818, 819
• PIC18F6310, 6390, 6393
• PIC16F870, 871, 872
• PIC18F6410, 6490, 6493
• PIC16F873, 874, 876, 877
• PIC18F6520, 6525, 6527, 6585
• PIC16F873A, 874A, 876A, 877A
• PIC18F6620, 6621, 6622, 6627
• PIC16F882, 883, 884, 886, 887
• PIC18F6628, 6680
• PIC16F913, 914, 916, 917
• PIC18F6720, 6722, 6723
• PIC16F946
• PIC18F8310, 8390, 8393
• PIC12F1822
• PIC18F8410, 8490, 8493
• PIC16F1823, 1824
• PIC18F8520, 8525, 8527, 8585
• PIC16F1826, 1827, 1828
• PIC18F8621, 8620, 8622, 8627
• PIC16F1933, 1934, 1936, 1937
• PIC18F8628, 8680
• PIC16F1938, 1939
• PIC18F8720, 8722, 8723
• PIC16F1946, 1947
• PIC18F24J10, F25J10, F44J10, F45J10
7  DISPOSITIVOS ADMITIDOS POR GM PICPROGRAM v2.61                38               
 
• PIC18LF24J10, LF25J10, LF44J10, LF45J10 • PIC24HJ12GP201, 12GP202
• PIC18F24J11, F25J11, F44J11, F45J11 • PIC24HJ16GP304
• PIC18LF24J11, LF25J11, LF44J11, LF45J11 • PIC24HJ32GP202, 32GP204
• PIC18F26J11, F46J11 • PIC24HJ32GP302, 32GP304
• PIC18LF26J11, LF46J11 • PIC24HJ64GP202, 64GP204
• PIC18F24J50, F25J50, F44J50, F45J50 • PIC24HJ64GP206, 64GP210, 64GP506
• PIC18LF24J50, LF25J50, LF44J50, LF45J50 • PIC24HJ64GP502, 64GP504, 64GP510
• PIC18F26J50, F46J50 • PIC24HJ128GP202, 128GP204
• PIC18LF26J50, LF46J50 • PIC24HJ128GP206, 128GP210, 128GP306
• PIC18F63J11, 63J90, 64J11, 64J90 • PIC24HJ128GP310
• PIC18F65J10, 65J11, 65J15 • PIC24HJ128GP502, 128GP504
• PIC18F65J50, 65J90 • PIC24HJ128GP506, 128GP510
• PIC18F66J10, 66J11, 66J15, 66J16 • PIC24HJ256GP206, 256GP210, 256GP610
• PIC18F66J50, 66J55, 66J60, 66J65
• PIC18F66J90 Dispositivos dsPIC30
• PIC18F67J10, 67J11, 67J50, 67J60
• PIC18F67J90 • dsPIC30F1010
• PIC18F83J11, 83J90, 84J11, 84J90 • dsPIC30F2010, 2011, 2012
• PIC18F85J10, 85J11, 85J15, 85J50 • dsPIC30F2020, 2023
• PIC18F85J90 • dsPIC30F 3010, 3011, 3012
• PIC18F86J10, 86J11, 86J15, 86J16 • dsPIC30F3013, 3014
• PIC18F86J50, 86J55, 86J60, 86J65 • dsPIC30F4011, 4012, 4013
• PIC18F86J90 • dsPIC30F5011, 5013, 5015, 5016
• PIC18F87J10, 87J11, 87J50, 87J60 • dsPIC30F6010A, 6011A, 6012A
• PIC18F86J90 • dsPIC39F6013A, 6014A, 6015
• PIC18F96J60, 96J65
• PIC18F97J60 Dispositivos dsPIC33
• PIC18F13K22, 14K22
• PIC18F13K50, 14K50 • dsPIC33FJ12GP201, 12GP202
• PIC18F23K20, 24K20, 25K20, 26K20 • dsPIC33FJ16GP304
• PIC18F43K20, 44K20, 45K20, 46K20 • dsPIC33FJ32GP202, 32GP204
• PIC18F23K22, 24K22, 25K22, 26K22 • dsPIC33FJ32GP302, 32GP304
• PIC18F43K22, 44K22, 45K22, 46K22 • dsPIC33FJ64GP202, 64GP204
• dsPIC33FJ64GP206, 64GP306, 64GP310
Dispositivos PIC24
• dsPIC33FJ64GP206A, 64GP306A, 64GP310A
• dsPIC33FJ64GP706, 64GP708, 64GP710
• PIC24F04KA200, 04KA201 • dsPIC33FJ64GP706A, 64GP710A
• PIC24F08KA101, 08KA102 • dsPIC33FJ64GP802, 64GP804
• PIC24F16KA101, 16KA102 • dsPIC33FJ128GP202, 128GP204
• PIC24FJ16GA002, 16GA004 • dsPIC33FJ128GP206, 128GP306, 128GP310
• PIC24FJ32GA002, 32GA004 • dsPIC33FJ128GP206A, 128GP306A,
• PIC24FJ32GA102, 32GA104 128GP310A
• PIC24FJ32GB002, 32GB004 • dsPIC33FJ128GP706, 128GP708, 128GP710
• PIC24FJ48GA002, 48GA004 • dsPIC33FJ128GP706A, 128GP710A
• PIC24FJ64GA002, 64GA004 • dsPIC33FJ128GP802, 128GP804
• PIC24FJ64GA102, 64GA104 • dsPIC33FJ256GP506, 256GP510, 256GP710
• PIC24FJ64GB002, 64GB004 • dsPIC33FJ256GP506A, 256GP510A,
256GP710A
• PIC24FJ64GA006, 64GA008, 64GA010
• dsPIC33FJ06GS101, 06GS102, 06GS202
• PIC24FJ64GB106, 64GB108, 64GB110
• dsPIC33FJ16GS402, 16GS404
• PIC24FJ96GA006, 96GA008, 96GA010
• dsPIC33FJ16GS502, 16GS504
• PIC24FJ128GA006, 128GA008, 128GA010
• dsPIC33FJ12MC201, 12MC202
• PIC24FJ128GA106, 128GA108, 128GA110
• dsPIC33FJ16MC304
• PIC24FJ128GB106, 128GB108, 128GB110
• dsPIC33FJ32MC202, 32MC204
• PIC24FJ192GA106, 192GA108, 192GA110
• dsPIC33FJ32MC302, 32MC304
• PIC24FJ192GB106, 192GB108, 192GB110
• dsPIC33FJ64MC202, 64MC204
• PIC24FJ256GA106, 256GA108, 256GA110
• dsPIC33FJ64MC506, 64MC508, 64MC510
• PIC24FJ256GB106, 256GB108, 256GB110
7  DISPOSITIVOS ADMITIDOS POR GM PICPROGRAM v2.61                39               
 
• dsPIC33FJ64MC706, 64MC710 • 11LC/AA160
• dsPIC33FJ64MC802, 64MC804
• dsPIC33FJ128MC202, 128MC204 Serial EEPROM Serie 24
• dsPIC33FJ128MC506, 128MC510
• dsPIC33FJ128MC706, 128MC708, 128MC710 • 24LC/AA/C00
• dsPIC33FJ128MC802, 128MC804 • 24LC/AA01B, 02B, 04B, 08B
• dsPIC33FJ256MC510, 256MC710 • 24LC/AA16B, 32A
• 24LC/AA/FC64, 128, 256, 512
Dispositivos PIC32 • 24LC/AA/FC1025

• PIC32MX320F032H, 320F064H Serial EEPROM Serie 25


• PIC32MX320F128H, 320F128L
• PIC32MX340F128H, 340F128L • 25LC/AA010A, 020A, 040A
• PIC32MX340F256H • 25LC/AA080A, 080B, 160A,
• PIC32MX340F512H 160B
• PIC32MX360F256L, 360F512L • 25LC/AA320A, 640A
• PIC32MX420F032H • 25LC/AA128, 256, 512, 1024
• PIC32MX440F128L, 440F128H
• PIC32MX440F256H Serial EEPROM Serie 93

• PIC32MX440F512H
• PIC32MX460F256L, 460F512L • 25LC/AA/C46A, 46B, 46C
• 25LC/AA/C56A, 56B, 56C
Serial EEPROM Serie 11 • 25LC/AA/C66A, 66B, 66C
• 25LC/AA/C47A, 76B, 76C
• 11LC/AA010 • 25LC/AA/C48A, 86B, 86C
• 11LC/AA020
• 11LC/AA040
• 11LC/AA080

7.2 MODO DEPURADOR   
 
       A continuación adjuntamos una lista de los dispositivos soportados en modo 
depurador por PICPROGRAM v2.61 compatible con PICkit2. Para más información visite el 
siguiente sitio web:  
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en027813 
 
Gama Baja • PIC12F615*, HV615*
- Use AC162083 ICD header & AC164110
adapter.
• PIC10F200*, 202*, 204*, 206* • PIC12F629*, 675*
• PIC12F508*, 509* - Use AC162050 ICD header & AC164110
• PIC16F505*
adapter.
- Above use AC162059 ICD header & • PIC12F635*, PIC16F636*
AC164110 adapter. - Use AC162057 ICD header & AC164110
• PIC10F220*, 222*
adapter.

• PIC12F510*
• PIC16F639*
- Use AC162066 ICD header & AC164110
• PIC16F506* adapter.
- Above use AC162070 ICD header &
AC164110 adapter.
• PIC12F683*
- Use AC162058 ICD header & AC164110
adapter.
Gama Media • PIC16F610*, HV610*
- Use AC162083 ICD header & AC164110
adapter.
Las versiones ‘LF’ de todos los dispositivos son soportadas. • PIC16F616*, HV616*
- Use AC162083 ICD header & AC164110
adapter.
• PIC12F609*, HV609*
- Use AC162083 ICD header & AC164110
adapter.
7  DISPOSITIVOS ADMITIDOS POR GM PICPROGRAM v2.61                40               
 

• PIC16F627A*, 628A*, 648A* • PIC18F6310, 6390, 6393


- Use AC162053 ICD header & AC164110
adapter.
• PIC18F6410, 6490, 6493

• PIC16F630*, 676*
• PIC18F6520, 6525, 6527, 6585
- Use AC162052 ICD header & AC164110 • PIC18F6620, 6621, 6622, 6627
adapter. • PIC18F6628, 6680
• PIC16F684* • PIC18F6720, 6722, 6723
- Use AC162055 ICD header & AC164110
adapter. • PIC18F8310, 8390, 8393
• PIC16F688* • PIC18F8410, 8490, 8493
- Use AC162056 ICD header & AC164110 • PIC18F8520, 8525, 8527, 8585
adapter.
• PIC18F8621, 8620, 8622, 8627
• PIC16F631*, 677*, 685*, 687*, 689*, 690*
• PIC18F8628, 8680
- Use AC162061 ICD header & AC164110
adapter. • PIC18F8720, 8722, 8723
• PIC16F716* • PIC18F24J10, F25J10, F44J10, F45J10
- Use AC162054 ICD header & AC164110
adapter.
• PIC18LF24J10, LF25J10, LF44J10, LF45J10

• PIC16(L)F722, 723, 724, 726, 727


• PIC18F24J11, F25J11, F44J11, F45J11

• PIC16F737, 747, 767, 777


• PIC18LF24J11, LF25J11, LF44J11, LF45J11

• PIC16F785*, HV785*
• PIC18F24J50, F25J50, F44J50, F45J50
- Use AC162060 ICD header & AC164110 • PIC18LF24J50, LF25J50, LF44J50, LF45J50
adapter. • PIC18F26J11, LF26J11, F46J11, LF46J11
• PIC16F87, 88 • PIC18F26J50, LF26J50, F46J50, LF46J50
• PIC16F818, 819 • PIC18F63J11, 63J90, 64J11, 64J90
• PIC16F870, 871, 872, 873, 874, 876, 877 • PIC18F65J10, 65J11, 65J15
• PIC16F873A, 874A, 876A, 877A • PIC18F65J50, 65J90
• PIC16F882, 883, 884, 886, 887 • PIC18F66J10, 66J11, 66J15, 66J16
• PIC16F913, 914, 916, 917 • PIC18F66J50, 66J55, 66J60, 66J65
• PIC16F946 • PIC18F66J90
• PIC18F67J10, 67J11, 67J50, 67J60
Gama Alta • PIC18F67J90
• PIC18F83J11, 83J90, 84J11, 84J90
Dispositivos PIC18F • PIC18F85J10, 85J11, 85J15, 85J50
Las versiones ‘LF’ de todos los dispositivos son soportadas. • PIC18F85J90
• PIC18F86J10, 86J11, 86J15, 86J16
• PIC18F242, 252, 442, 452 • PIC18F86J50, 86J55, 86J60, 86J65
• PIC18F248, 258, 448, 458 • PIC18F86J90
• PIC18F1220, 1320, 2220, 2320 • PIC18F87J10, 87J11, 87J50, 87J60
• PIC18F1230, 1330 • PIC18F87J90
• PIC18F2221, 2321 • PIC18F96J60, 96J65
• PIC18F2331, 2410, 2420, 2431 • PIC18F97J60
• PIC18F2423, • PIC18F14K22
• PIC18F2450, 2455, 2458, 2480 • PIC18F13K50, 14K50
• PIC18F2510, 2515, 2520, 2523 • PIC18F24K20, 25K20, 26K20
• PIC18F2525 • PIC18F44K20, 45K20, 46K20
• PIC18F2550, 2553, 2580, 2585
• PIC18F2610, 2620, 2680 Dispositivos PIC24
• PIC18F2682, 2685
• PIC18F4220, 4221
• PIC24FJ16GA002, 16GA004
• PIC18F4320, 4321, 4331
• PIC24FJ32GA002, 32GA004
• PIC18F4410, 4420, 4423
• PIC24FJ48GA002, 48GA004
• PIC18F4431, 4450, 4455
• PIC24FJ64GA002, 64GA004
• PIC18F4458, 4480
• PIC24FJ64GA006, 64GA008, 64GA010
• PIC18F4510, 4515, 4520, 4523
• PIC24FJ64GB106, 64GB108, 64GB110
• PIC18F4525, 4550, 4553, 4580
• PIC24FJ96GA006, 96GA008, 96GA010
• PIC18F4585
• PIC24FJ128GA006, 128GA008, 128GA010
• PIC18F4610, 4620, 4680
• PIC24FJ128GA106, 128GA108, 128GA110
• PIC18F4682, 4685
7  DISPOSITIVOS ADMITIDOS POR GM PICPROGRAM v2.61                41               
 
• PIC24FJ128GB106, 128GB108, 128GB110 • PIC24HJ16GP304
• PIC24FJ192GA106, 192GA108, 192GA110 • PIC24HJ32GP202, 32GP204
• PIC24FJ192GB106, 192GB108, 192GB110 • PIC24HJ32GP302, 32GP304
• PIC24FJ256GA106, 256GA108, 256GA110 • PIC24HJ64GP202, 64GP204
• PIC24FJ256GB106, 256GB108, 256GB110 • PIC24HJ64GP206, 64GP210, 64GP506
• PIC24HJ12GP201, 12GP202 • PIC24HJ64GP502, 64GP504, 64GP510
• PIC24HJ128GP202, 128GP204 • dsPIC33FJ64GP202, 64GP204
• PIC24HJ128GP206, 128GP210, 128GP306 • dsPIC33FJ64GP206, 64GP306, 64GP310
• PIC24HJ128GP310 • dsPIC33FJ64GP706, 64GP708, 64GP710
• PIC24HJ128GP502, 128GP504 • dsPIC33FJ64GP802, 64GP804
• PIC24HJ128GP506, 128GP510 • dsPIC33FJ128GP202, 128GP204
• PIC24HJ256GP206, 256GP210, 256GP610 • dsPIC33FJ128GP206, 128GP306, 128GP310
• dsPIC33FJ128GP706, 128GP708, 128GP710
Dispositivos dsPIC30 • dsPIC33FJ128GP802, 128GP804
• dsPIC33FJ256GP506, 256GP510, 256GP710

• dsPIC30F1010
• dsPIC33FJ06GS101, 06GS102, 06GS202

• dsPIC30F2010, 2011, 2012


• dsPIC33FJ16GS402, 16GS404

• dsPIC30F2020, 2023
• dsPIC33FJ16GS502, 16GS504

• dsPIC30F 3010, 3011, 3012


• dsPIC33FJ12MC201, 12MC202

• dsPIC30F3013, 3014
• dsPIC33FJ16MC304

• dsPIC30F4011, 4012, 4013


• dsPIC33FJ32MC202, 32MC204

• dsPIC30F5011, 5013, 5015, 5016


• dsPIC33FJ32MC302, 32MC304

• dsPIC30F6010A, 6011A, 6012A


• dsPIC33FJ64MC202, 64MC204

• dsPIC39F6013A, 6014A, 6015


• dsPIC33FJ64MC506, 64MC508, 64MC510
• dsPIC33FJ64MC706, 64MC710
• dsPIC33FJ64MC802, 64MC804
Dispositivos dsPIC33 • dsPIC33FJ128MC202, 128MC204
• dsPIC33FJ128MC506, 128MC510
• dsPIC33FJ12GP201, 12GP202 • dsPIC33FJ128MC706, 128MC708, 128MC710
• dsPIC33FJ16GP304 • dsPIC33FJ128MC802, 128MC804
• dsPIC33FJ32GP202, 32GP204 • dsPIC33FJ256MC510, 256MC710
• dsPIC33FJ32GP302, 32GP304

 
 
 
 
 
 
 
 
 
 
   
 
 
 
 
 
 
 
 

Anda mungkin juga menyukai