Está en la página 1de 27

PROGRAMADOR/DEPURADOR

MICROCHIP PIC MV1

MOVILTRONICS

CONTENIDO:
1. Programación 3

2. Depuración 12

3. Herramienta UART 15

4. Herramienta lógica 16

5. Modelos programables y depurables 19

6. Actualizaciones 20

7. Localización y resolución de problemas 20

8. FAQ 21

1
El sistema de desarrollo PIC MV1, es compatible con el PICkit2 de Microchip,
por lo tanto los manuales y tutoriales que aplican al PICkit2 original también
aplican al PIC MV1 con las siguientes limitaciones:

1. La función “PROGRAMMER-TO-GO” no esta habilitada.


2. El pulsador externo no esta habilitado.
3. La fuente de voltaje siempre esta habilitada con un único valor de 5V, por lo
que no hay que configurar nada al respecto.

Instalación del software:

1. Dentro del CD de instalación, seleccione el instalador del programa pickit2 de


acuerdo a las características de su equipo:

• PICkit 2 Setup v2.XX.zip: Si su equipo ya tiene instalado Microsoft .NET


Framework 2.0.
• PICkit 2 Setup v2.XX dotNET.zip: Si no esta instalado el .NET 2.0.

Si no sabe si su equipo tiene instalado el Framework, ejecútelo (dotnetfx.exe) y el le


dirá si lo puede instalar o si ya lo tiene instalado.

2. Siga las instrucciones del instalador.

3. El proceso de programación del microcontrolador lo puede realizar desde el


programa PICkit 2 o directamente desde el MPLAB. La instalación del software
PICkit2 es obligatoria en ambos casos.

4. No se requiere la instalación de driver.

5. Instale el MPLAB IDE de versiones superiores a la 8.0 y siempre terminadas en 0,


ejemplo: MPLAB IDE 8.0 o 8.10 o 8.20.
Las versiones diferentes (8.14, 8.17) no son versiones finales por lo que no deben
usarse pues poseen errores e inestabilidades.

Este programador no funciona con software genéricos como el ICPROG,


WINPIC, WINPIC800, etc.
Solo debe usar para la programación el PICkit2 o MPLAB y para la
depuración el MPLAB.
Para usarlo con otro software que no sea el MPLAB deberá buscar la opción de
conectarse al PICkit2 desde su software o importar el archivo .hex generado
desde el MPLAB.

2
PROGRAMACIÓN.

Primero conecte el programador a uno de los puertos USB disponibles en su


computador, el led USB (rojo) debe encenderse, indicando la correcta conexión al
puerto, además se debe reproducir el sonido de “conectar dispositivo” de Windows
(si esta habilitado). Este programador no posee un driver específico, por lo que el
proceso de instalación es automático..
Este programador tiene la ventaja de detectar automáticamente la mayoría de los
microcontroladores y dsPIC existentes como son los de gama alta y media y modelos
fabricados luego del 2003. Los modelos de la serie 10f, 12F5XX, 16f5X, 16f5XX y
las memorias eeprom no son autodetectables. Además los microcontroladores con
fabricación anterior al 2003 pueden no ser autodetectables y presentar problemas de
compatibilidad con el software MPLAB y el PICkit2.

Para programar el microcontrolador o dsPIC existen 2 opciones de software:

1. MPLAB. Seleccione en la pestaña Programmer del MPLAB, el PICkit2.


Inmediatamente el programa detecte el PICkit 2 aparecerá el mensaje “PICkit 2
Ready”, luego puede borrar, programar y verificar el microcontrolador, todo en la
pestaña Programmer del MPLAB.

2. PICkit2. Ejecute el programa PICkit2. Luego de un rato (pueden ser bastantes


segundos) en la casilla estado, aparecerá el mensaje “PICkit 2 found and
connected”, si tiene conectado algún microcontrolador autodetectable conectado
correctamente (en posición y jumper) aparecerá el mensaje “PIC Device Found”
mostrando en la casilla Device el modelo correspondiente a su microcontrolador.

Si su microcontrolador no es autodetectable seleccione en la pestaña “Device


Family” la serie “Baseline” y luego el modelo correspondiente. Luego puede realizar
las acciones para quemar su microcontrolador Read, Write, Verify, Erase, Blank
Check. Para cargar el archivo .hex a quemar en el micro o dsPIC, seleccione en la
pestaña File la opción “Import hex”.

3
NOTA: No olvide borrar el microcontrolador antes de programarlo.

Para programar el microcontrolador o dsPIC existen 2 opciones de conexión:

1. BASE ZIP: Coloque su dsPIC o microcontrolador en la base ZIP correctamente y


luego coloque el jumper en la posición correspondiente como se ve en los diagramas
de la pagina siguiente.

2. CONEXIÓN ICSP:
Si su microcontrolador o dsPIC es de un pinado diferente a los que se ven en los
diagramas (PIC de 14 y 20 pines, o dsPIC de 18 o 28 pines), o es de un
empaquetado superficial (SOIC, DFN, etc) debe realizar la programación mediante
la CONEXIÓN ICSP.
También en caso de que su micro o dsPIC presente problemas al tratar de
programarlo en la base ZIP, pruebe esta alternativa (ejemplo: si su PIC16f887 no le
programa en la base ZIP).

Puede observar ejemplos de esta conexión más adelante.

SI DESEA UNA INFORMACION MAS DETALLADA ENTRE AL pdf “PICkit2


USER GUIDE”, Capítulo 2 y Apéndice A. (pestaña help del software PICkit2)

4
PROGRAMACIÓN en base ZIP
4 Jumpers (J1,J2,J3,J4) seleccion en posición d3014/4013 (J1,J1,J3,J3,X)
(J2,J2,J4,J4,X)

Microcontrolador de 40
pines, jumper en posición
PIC 40 “40-28 pines”.
Pin1 del micro en pin1 de
D la base.
PIC S 40-28 18 pines
P pines 10f y 12f
I
C

Microcontroladores de 28
pines, jumper en posición
PIC 28 “40-28 pines”.
Pin1 del micro en pin1 de
la base.
D
PIC S 40-28 18 pines
P
I pines 10f y 12f
C

Microcontroladores de 18
pines, jumper posición
PIC 18 “18pines, 10f y 12f”.
Pin1 del micro en pin2 de
la base.
D
40-28 18 pines
PIC S
P pines 10f y 12f
I
C

Microcontroladores de 8
pines serie 10f, jumper
PIC10
posición “18pines, 10f y 12f”.
Pin1 del micro en pin13 de la
base.
D
PIC S 40-28 18 pines
P
I pines 10f y 12f
C

Microcontroladores de 8
pines serie 12f,jumper
PIC 12 posición “18pines, 10f y
12f”.

D
Pin1 del micro en pin17 de
PIC S
P
40-28
pines
18 pines
10f y 12f
la base.
I
C

ADVERTENCIA: Seleccione correctamente, en el programador, el jumper


correspondiente al modelo de su microcontrolador a programar (ver figuras),
pues de no hacerlo correctamente puede sufrir daños su microcontrolador.
5
dsPIC de 40 y 28 pines
2 Jumpers (J1 y J2) seleccion en posición dsPIC (X,J1,J1,X,X)
(X,J2,J2,X,X)

dsPIC de 40 y 28 pines,
jumper en posición “28,40”.
dsPIC 40 Pin1 del dsPIC en pin1 de la
base.
D
PIC S 40-28 18 pines
P pines 10f y 12f
I
C

dsPIC30f3014 y dsPIC30f4013
4 Jumpers (J1,J2,J3,J4) seleccion en posición d3014/4013 (X,J1,J1,J3,J3)
(X,J2,J2,J4,J4)

dsPIC30f3014 y 4013, jumper


dsPIC30f3014/4013 en posición “28,40”.
Pin1 del dsPIC en pin1 de la
base.
D
PIC S 40-28 18 pines
P
I pines 10f y 12f
C

NOTA: Los modelos de dsPIC de menos de 28 pines deben programarse mediante la


Conexión ICSP asegurándose de cablear los pines 40 y 39 del dsPIC a Vcc y GND.

NOTA: Si encuentra alguna incompatibilidad al tratar de programar modelos nuevos de


microcontroladores o dsPIC, mediante la base ZIP, pruebe la programación mediante la
Conexión ICSP. La ventaja de esta opción es que programa cualquier micro o dsPIC de
cualquier empaquetado o configuración de pines.
Solo siga las instrucciones que se presentan en la siguiente pagina.

6
PROGRAMACIÓN MEDIANTE LA CONEXIÓN ICSP.

Para conectar su micro o dsPIC revise en el datasheet, cuales son los pines
correspondientes a las funciones PGC, PGD, VPP o MLCR, VDD y VSS.
Luego conéctelos a la conexión ICSP del MV1.
Después de esto verifique la correcta conexión al programador y después puede proceder
al borrado, programación y verificación del código programado.
Ejemplos:

Conexión a PIC de 28 pines.


Ejemplos:
PIC16f873A,PIC16f886,
PIC18f2550

En el caso de que su dispositivo tenga pines de conexión de alimentación adicionales


(AVdd, AVss), para que se pueda proceder a la programacion directamente con el
MPLAB, estos deben ser conectados a los voltajes de 5V o 0V correspondientemente.
De lo contario solo se podran programar con el software PICkit2.

SI DESEA UNA INFORMACION MAS DETALLADA ENTRE AL pdf “PICkit2 USER


GUIDE”, Capítulo 2 y Apéndice A. (pestaña help del software PICkit2)

7
dsPIC de 28, 18 pines superficiales, DIP o en circuito

dsPIC30f2010

8
Para la programación de las memorias 24LC, 24AA o 24C solo se puede usar el
software PICkit2. Selecciónelas en la pestaña “Device Family”, luego “EEPROMS”
y luego “24LC”, luego en la casilla Device seleccione el modelo correspondiente a
su memoria. Además en el cuadro “Configuration” desactive todas las casillas Chip
Select disponibles, de lo contrario obtendrá el mensaje “I2C Bus Error”. Luego de la
correcta conexión puede realizar las funciones de borrado y quemado de la memoria.

Conexión a 24LC64

Para la programación de las memorias 93LC, 93AA o 93C use el software PICkit2.
Selecciónelas en la pestaña “Device Family”, luego “EEPROMS” y luego
“93LCxA,C” o “93LCxB,C” dependiendo del modelo de su memoria.
Luego en la casilla Device seleccione el modelo correspondiente a su memoria.
Luego de la correcta conexión puede realizar las funciones de borrado y quemado de
la memoria.

Conexión a 93LC46B

Para la programación de otros dispositivos, diríjase al archivo “PICkit2


Readme” que se encuentra en el software PICkit2 en la pestaña Help y luego en
Readme.

9
Nota: El 95% de los problemas que reportan los clientes de este producto, se deben a
que los usuarios no configuran correctamente los bits de configuración del
microcontrolador o dsPIC dentro del código diseñado. Queman el código y el
programador dice que todo esta OK (programming successful), pero al conectarlo no
hace nada. La solución se explica a continuación, revise y siga los pasos que se dan en
esta respuesta, en caso de que este sea su problema.

Este es un problema muy común entre las personas que no configuran los bits de
configuración del micro.
Si le quemo bien el micro (aviso de que la programación fue exitosa) es porque el
programador le esta quemando bien la memoria FLASH y EEPROM.
Lo que pasa es que el programador no se fija en si el código que usted le ordena quemar
esta completo o esta bien, la única función del programador es programar la
memoria que usted le indique.
Este problema se debe a que su código tiene alguna falla, realice las siguientes pruebas:
a - Verifique los bits de configuración del modelo del micro pues esa puede ser la razón
de que no inicie. Además debe garantizar que los bits estén en el archivo .hex, para eso
debe usar directivas de configuración del micro, ejemplo:
__CONFIG _CP_OFF & _WDT_ON & _PWRTE_ON & _RC_OSC
(debe dejar unos espacios en blanco antes del _CONFIG)
Una forma fácil de saber que directivas requiere un micro es ir a los archivos de
ejemplo que se encuentran en la ruta:
\Microchip\MPASM Suite\Template\Object
Esto es para el MPLAB 8
allí se encuentran archivos .asm para cada micro, donde se ejemplifican las directivas y
la organización de la memoria.
Use este modelo y no tendrá pierde.
Para los dsPIC30f, revise las directivas y ejemplo que se encuentran en los archivos .inc
de la ruta:
\Microchip\MPLAB ASM30 Suite\Support\dsPIC30F\inc

10
b - El oscilador puede no estar bien configurado en el micro.
Debe usar directivas de configuración del micro, ejemplo (PIC16f84a):
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _RC_OSC
Si esta usando cristal externo, deberia ser:
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
Ejemplo para dsPIC30f4011:
config __FOSC, CSW_FSCM_ON & EC_PLL16
config __FBORPOR, PBOR_ON & BORV_27 & PWRT_ON_64 &
MCLR_DIS
c - Coloque un filtraje adecuado a su fuente, condensador de 100uF en paralelo con la
fuente. Además coloque un condensador de 0,1uF en paralelo con los pines de
alimentación del micro, lo mas cercano posible.
d - Mejore la fuente, no usar adaptadores sin filtraje o conductores largos.

11
DEPURACIÓN.

Este sistema de desarrollo soporta la depuración de los códigos programados en su


PIC o dsPIC. La depuración es equivalente al proceso de simulación que realizamos
comúnmente, pero esta nos permite ver que ocurre realmente dentro del dispositivo,
ya que el PIC o dsPIC esta conectado a nuestro circuito funcionando en tiempo
real o paso a paso.

Ventajas:

1.Funcionamiento del PIC o dsPIC en el mundo real, conectado con los periféricos
con que interactúa (pantallas, interruptores, leds, integrados análogos o digitales,
memorias, etc.).
2.Opción de funcionamiento en tiempo real, paso a paso o por rutinas (velocidad
menor que en tiempo real).
3.Podemos colocar hasta 4 breakpoints, normales para PIC (detención) o avanzados
para dsPIC (sobre registros y contadores), dentro del dispositivo.
4.Podemos analizar lo que ocurre internamente en el PIC o dsPIC, pudiendo ver y/o
cambiar registros y variables de la memoria interna, saltando a alguna parte
especifica del programa, guardando datos y cambiando rápidamente alguna parte del
código todo desde el MPLAB.

Esto agiliza enormemente el tiempo de diseño y pruebas de un programa diseñado


ya que ahora los errores se descubren en el mundo real y no en el virtual, como
se hacia antes mediante la simulación.

LEA LAS SIGUIENTES INDICACIONES ANTES DE USAR LA FUNCION DE


DEPURACIÓN EN CIRCUITO:

La depuración nos permite ver el funcionamiento de nuestro dispositivo


conectado al circuito con todos sus componentes.
En esta condición el Programador se encuentra expuesto a los errores que se
puedan cometer en el circuito externo.
Ejemplo: Si generamos un cortocircuito en la fuente de alimentación del
circuito podemos generar alguna situación riesgosa.

NO OLVIDE QUE EL SISTEMA DE DESARROLLO PIC MV1 ESTA


CONECTADO A SU COMPUTADOR. Si no se toman las debidas
precauciones y protecciones en su circuito pueden generarse fallas que
en el peor de los casos podrían afectar la fuente de alimentación de su
computador.

12
DEPURACIÓN:

Para utilizar esta función debemos conectar el micro o dsPIC mediante la Conexión
ICSP, como se muestra en la sección de programación y en el capitulo 3 del pdf
“PICkit2 User Guide”.

Para ello revise en el datasheet de su micro o dsPIC, cuales son los pines
correspondientes a las funciones PGC, PGD, VPP o MLCR, VDD y VSS.

Para el caso de dispositivos con pines de alimentación adicional como AVdd y AVss,
estos deben conectarse a los voltajes correspondientes de 5V y 0V. Si se dejan
desconectados se generaran errores al tratar de programar el dispositivo.
Además los dsPIC y PIC18 y algunos nuevos micros PIC16, exigen una resistencia de
pulldown en la comunicación para poder soportar la depuración mediante el MPLAB,
simplemente conecte una resistencia de 4,7 KΩentre el pin de PGD y tierra, y otra entre
el pin de PGC y tierra (mirar diagrama).

Luego conéctelos a la conexión ICSP del MV1.


Después de verificar todas las conexiones, en el MPLAB seleccione en la pestaña
Debugger el PICkit2, debe aparecer un mensaje similar al siguiente:

Found PICkit 2 - Operating System Version 2.32.0


PICkit 2 Unit ID = OlHoss
Target power detected ( 4.99V)
PIC16F916 found (Rev 0x3)
PICkit 2 Ready

Si aparecen mensajes de error verifique que el micro o dsPIC esta correctamente


seleccionado en la pestaña “Select Device” del MPLAB.
Después puede proceder a programar el código en el micro, y posteriormente a depurarlo
en el MPLAB.

Ejemplos de conexión:

Conexión a PIC de 28 pines.


PIC16f873A

13
Conexión a dsPIC de 28 pines,
dsPIC30f4012.
Conexión adicional pines AVdd y
AVss a Vdd y Vss (5V y 0V).
Resistencias adicionales de
pulldown de 4.7KΩ a los pines de
dsPIC30f4012 PGC y PGD.

Después de programar el micro o dsPIC pude proceder a la depuración en tiempo real o


paso a paso del código.
En caso de algún error verifique y corrija el código y prosiga con la depuración.

SI DESEA UNA INFORMACION MAS DETALLADA ENTRE AL PICkit2 USER


GUIDE, capitulo 3, o a la ayuda del MPLAB (Help, Topics, PICkit2 Programmer).

El depurador tiene algunas limitaciones que deben ser tenidas en cuenta, por ejemplo la
velocidad de depuración depende de los registros que estemos viendo y de las funciones
utilizadas.
Revise el archivo PICkit2 USER GUIDE, capitulo 5 para entender mejor los
problemas y limitaciones mas comunes del MV1 en el proceso de depuración.

14
HERRAMIENTA UART.

Esta función nos permite usar el PIC MV1 como una interfaz serial UART real para
comunicarnos con un PIC, dsPIC o cualquier otro dispositivo que necesite una
comunicación serial física. La interfaz soporta comunicación serial asíncrona full
duplex desde 150 hasta 38400 baudios. Puede enviar archivos, guardar datos en
tiempo real, muestra lo recibido y se puede conectar directamente a un dispositivo
lógico, o a un puerto serial mediante un conversor como el max232.

Ejemplo de conexión
a un PIC16f873a:

Para acceder a la herramienta


use el software PICkit2 y en la
pestana “Tools” seleccione
“UART Tool…”.
Luego proceda a configurar
Y luego conectar.
Después podrá recibir o
enviar archivos, datos, etc.

Para una información más detallada diríjase al pdf “PICkit2 User Guide” y
revise el capitulo 7 titulado “PICkit2 UART Tool”.

15
HERRAMIENTA LOGICA.

Esta función nos permite usar los pines de la conexión ICSP para la estimulación y
prueba de señales digitales en el circuito de funcionamiento, y también como un
analizador lógico digital de 3 canales.

MODO Logic I/O:

Útil para generar hasta 4 señales y/o monitorear el estado actual de hasta 3 señales
digitales en tiempo real.
Puede simular interruptores, leds y cualquier salida lógica sin necesidad de
cableados complejos.

Para una información más detallada diríjase al software PICkit2 y en la


pestaña de Help abra el pdf “Logic Tool User Guide” y revise su contenido.

16
Ejemplo: Conectamos un PiC12fxxx al PIC PD5, pasamos a revisar su
funcionamiento habilitando 2 entradas y 2 salidas.
En el software PICkit2 cambiamos el valor de las entradas pin5 y pin6 a 1 y 0.
Ahora observamos que el valor de las salidas del micro pin1 y pin4 son 0 y 1.

Todo esto sin necesidad de cableados a leds o interruptores.

MODO Analyzer:

Puede mostrar hasta 3 formas de onda de señales digitales de máximo 500KHz,


midiendo su duración y frecuencia. Aplica para monitorear cualquier señal digital
generada. Muy útil para monitorear señales seriales como UART, SPI e I2C.

Para una información más detallada diríjase al software PICkit2 y en la pestaña


de Help abra el pdf “Logic Tool User Guide” y revise su contenido.

17
Ejemplo: Conectamos un LM555 al PIC PD5, pasamos a revisar el funcionamiento
de sus tres salidas. En el osciloscopio lógico observamos que el canal1 se encuentra
en 1 y el canal3 se encuentra en 0. El canal 2 tiene un tren de pulsos, ajustamos los
cursores y vemos que tiene una duración de 80ms (12,5Hz).
Todo esto sin necesidad de osciloscopio, multímetro o frecuencímetro.

18
MODELOS PROGRAMABLES Y DEPURABLES.

1. Programa toda la gama baja, media y alta de Microchip:

• Todos los microcontroladores de las series PIC10f, PIC12f, PIC16f, PIC18f.


Ejemplos más comerciales:
 PIC10f_200,202,204,206,220,222.
 PIC12f_508,509,609,629,675,683.
 PIC16f_84A,610,616,628,628A,630,636,676,
677,688,88,87,818,870,873,873A,874,874A,876,
877,877A,883,884,887,913,916,946.
 PIC18f_252,258,452,1220,1320,2320,2455,2550,
4450,4455, 4550,6620,6680,8390,8410,8520,8723.

• Todos los dsPICs de la serie dsPIC30f: dsPIC30f_1010,


2010,2012,3011,3014,4011,4012,4013,5015, 6011A,6014A.
• dsPIC33f y Microcontroladores series PIC24 y PIC32.

• Memorias 24C(LC,AA), 93C(LC,AA),11LC,25LC, ejemplos:


24C(LC,AA)_00,01,04,16,64,256,1025. 93C(LC)_46,56,76.

• KEELOQ HCS y MCP250xx CAN.

Para un listado completo de dispositivos programables con el MV1, dirijase al


archivo “PICkit2 Readme” que se encuentra en el software PICkit2 en la
pesta;a Help y luego en Readme.

2. Depura toda la gama media y alta de Microchip:

• Microcontroladores PIC16f (excepto 84a, 628a, 6xx).


• Todos los PIC18f, dsPIC30f y dsPIC33f.

Para un listado completo de dispositivos programables con el MV1, dirijase a la


direccion:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en027813

19
ACTUALIZACIONES.

El sistema de desarrollo PIC MV1 se puede actualizar en software y firmware sin


necesidad de algún cambio en hardware.

Para actualizar el software PICkit2 debe entrar al sitio web de Microchip y baja la
ultima versión del software PICkit2.

Para actualizar el MPLAB debe bajarlo del sitio web de Microchip, solo se
recomienda usar las versiones estables, terminadas en 0 (ejemplo: 8.10, 8.20) y no
las versiones prueba (ejemplo: 8.14, 8.05) pues pueden contener más errores y
problemas.

Cada vez que el sistema de desarrollo necesite actualización de su sistema operativo,


el software PICkit2 o el MPLAB le avisaran sin necesidad de que usted tenga que
hacer algún proceso, solo permita que el software lo haga automáticamente.

No intente hacer la actualización de sistema operativo del PIC MV1


manualmente pues de cometer algún error, puede dejar inservible el PIC MV1.

Para una información más detallada diríjase al pdf “PICkit2 User Guide” y
revise el capitulo 6 titulado “Updating the PICkit2 Operating System”.

LOCALIZACIÓN Y RESOLUCIÓN DE PROBLEMAS.

En caso de presentarse problemas con el software o el sistema de desarrollo, lea


primero la sección de FAQ que se maneja en el siguiente capitulo.
Si su problema no lo encuentra en esta sección, diríjase al capitulo 5
(Troubleshooting) del pdf “PICkit2 User Guide”.

20
PREGUNTAS Y RESPUESTAS FRECUENTES.

Nota: El 95% de los problemas que reportan los clientes de este producto, se deben
a que los usuarios no configuran correctamente los bits de configuración del
microcontrolador o dsPIC dentro del código diseñado. Queman el código y el
programador dice que todo esta OK (programming successful), pero al conectarlo no
hace nada. La solución se explica en la respuesta 1, revise y siga los pasos que se
dan en esta respuesta, en caso de que este sea su problema.

1 – En el software PICKit2 (MPLAB) quemo el código en mi micro, pero luego


no hace nada. Parece que no lo ha quemado pues no genera ninguna función.
Que puede ser?

Este es un problema muy común entre las personas que no configuran los bits de
configuración del micro.
Si le quemo bien el micro (aviso de que la programación fue exitosa) es porque el
programador le esta quemando bien la memoria FLASH y EEPROM.
Lo que pasa es que el programador no se fija en si el código que usted le ordena
quemar esta completo o esta bien, la única función del programador es
programar la memoria que usted le indique.
Este problema se debe a que su código tiene alguna falla, realice las siguientes
pruebas:
a - Verifique los bits de configuración del modelo del micro pues esa puede ser la
razón de que no inicie. Además debe garantizar que los bits estén en el archivo .hex,
para eso debe usar directivas de configuración del micro, ejemplo:
__CONFIG _CP_OFF & _WDT_ON & _PWRTE_ON & _RC_OSC
(debe dejar unos espacios en blanco antes del _CONFIG)
Una forma fácil de saber que directivas requiere un micro es ir a los archivos de
ejemplo que se encuentran en la ruta:
\Microchip\MPASM Suite\Template\Object
Esto es para el MPLAB 8
allí se encuentran archivos .asm para cada micro, donde se ejemplifican las
directivas y la organización de la memoria.
Use este modelo y no tendrá pierde.
Para los dsPIC30f, revise las directivas y ejemplo que se encuentran en los
archivos .inc de la ruta:
\Microchip\MPLAB ASM30 Suite\Support\dsPIC30F\inc

21
b - El oscilador puede no estar bien configurado en el micro.
Debe usar directivas de configuración del micro, ejemplo (PIC16f84a):
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _RC_OSC
Si esta usando cristal externo, deberia ser:
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
Ejemplo para dsPIC30f4011:
config __FOSC, CSW_FSCM_ON & EC_PLL16
config __FBORPOR, PBOR_ON & BORV_27 & PWRT_ON_64 &
MCLR_DIS
c - Coloque un filtraje adecuado a su fuente, condensador de 100uF en paralelo con
la fuente. Además coloque un condensador de 0,1uF en paralelo con los pines de
alimentación del micro, lo mas cercano posible.
d - Mejore la fuente, no usar adaptadores sin filtraje o conductores largos.

2. Al abrir el archivo .hex, me genera el siguiente aviso el software PICKit2:


Warning: no configuration words in hex file. In MPLAB use File-Export to save
hex with config. Que puede ser?

Hay dos formas de asegurar que los bits de configuración queden en el archivo .hex:
a – Incluyendo las directivas de configuración del micro, ejemplo PIC16f84a:
__CONFIG _CP_OFF & _WDT_ON & _PWRTE_ON & _RC_OSC
b - Haciendo la exportación del archivo en File, export y asegurándose de seleccionar
que se exporten los bits de configuración.

3 - El programador no me lo reconoce el computador portátil, no hace nada, que


puede ser? Será el MPLAB? Su programador sirve con portátiles?

Es un problema muy extraño porque este programador se ha probado en muchísimos


pc portátiles y nunca ha tenido inconvenientes, pues el puerto USB tiene igual
manejo en un desktop que en un portátil.
Revise los siguientes pasos:
a - El led rojo se enciende al conectarlo al puerto USB?
b - Su computador reconoce el dispositivo cuando lo conecta (sonido de conexión o
instala algún driver), revise en el administrador de dispositivos si aparece un nuevo
elemento llamado "Dispositivo de interfaz humana (HID)" cada vez que lo conecta?

22
Si no enciende el led, verifique que sus puertos están bien instalados y habilitados.
Si no lo reconoce el computador cuando lo conecta debe ser que tiene por seguridad
alguna función deshabilitada, revise el manejo de puertos USB de su PC.
Si se lo reconoce use el software PICKit2 directamente y pruebe los resultados.
El MPLAB, pues este es un software diseñado por Microchip y es 100% compatible
con XP y VISTA.

4. El microcontrolador Pic16f84a no me funciona con su programador en el


MPLAB, que puedo hacer?

El 16f84A no tiene soporte directo con el MPLAB, así que debe usar el PICKit2
para quemar este micro y siga las siguientes recomendaciones de la pregunta 1.

5. El microcontrolador Pic12f508 no me funciona con su programador, que


puedo hacer?

El programador si quema el micro PIC12f508 con el software PICKit2


Lo que pasa es que este micro corresponde a la serie "Baseline" que no es
autodetectable.
Lo que debe hacer es colocar el micro en la posición de un PIC12 de 8 pines,
colocar el jumper en PIC12.
Luego seleccione en la pestaña “Device Family", la familia “Baseline" y luego el
modelo PIC12f508.
Luego puede borrar, programar y verificar lo quemado en su micro.

6. El programador no me ha funcionado y no se cual es el problema.


Tengo el código en el assembler de MPLAB y me compila bien, además lo he
simulado en Proteus y funciona perfecto. Pero al montarlo en protoboard no
funciona!!! Que puedo hacer???.

Proteus es un programa muy completo, aunque en la parte de simulación hay que


saberlo manejar bien.
Si usted se fija en el ISIS de Proteus, hay que configurar dentro de las propiedades
del microcontrolador a simular, la palabra de configuración y la velocidad de reloj.
Si usted no configura estos datos dentro del código al ISIS no le importa, porque los
configura por defecto.

23
Pero al programar el micro tal como esta el código con el MPLAB o PICkit2, el
micro queda sin estos bits de configuración programados y no funciona. Por lo que el
proceso para arreglar este error es el que se indica en las respuestas 1 y 2 de este
documento.

7. Uso el programa X (ejemplo: PICBasic, MicroCode, Hi-Tech, PARSIC, etc) y


genero el archivo .hex para quemar el micro o dsPIC, a la hora de programarlo
todo parece estar bien, pero al montarlo no hace nada!!! Ayudenme!!!.
No se olvide de configurar la palabra de configuración de su micro o dsPIC, pues si
no lo hace el micro no le funcionara.
Verifique que en el programa X que usa, se incluyan en el archivo .hex generado los
bits de configuración del micro o dsPIC para que el micro le quede bien configurado.

8. El PICXXfXXXX que compre, no me funciona con su programador. Que


tengo que programarle adicionalmente para que funcione?

Algunas nuevas series de microcontroladores PIC, poseen incompatibilidades con el


sistema de desarrollo, pues pueden tener funciones nuevas en algunos pines, por esta
razón para programar estos microcontroladores o dsPIC se recomienda el uso de la
Conexión ICSP

Siempre en caso de que su micro o dsPIC presente problemas al tratar de


programarlo en la base ZIP, pruebe la programación mediante la Conexión
ICSP.

La ventaja de esta opción es que programa cualquier micro o dsPIC de


cualquier empaquetado o configuración de pines, pues a veces los micros o
dsPICs nuevos tienen incompatibilidades con los modelos antiguos o tienen una
configuración de pines diferente.

Solo siga las instrucciones que se presentan en la sección Conexión ICSP.

24
9. De un momento a otro el programador se daño.
Lo conecto al puerto USB de mi computador y el led verde comienza a titilar y
al abrir el software PICkit2 el programa dice:

Que puede ser?

El daño se debe a que de alguna forma el Sistema Operativo del sistema de desarrollo
se corrompió. Esto se debió a algún problema en el momento de la conexión con el
PC.
Para solucionarlo realice el siguiente proceso:
Cuando obtenga el mensaje anterior, en el software PICkit2, vaya a la pestaña
“Tools” y seleccione la opción “Download PICkit 2 Operating System”, luego
navegue en su computador a la dirección donde tiene instalado el PICkit2 (ejemplo:
C:\Archivos de programa\Microchip\PICkit 2 v2) y abra el archivo
PK2V0XXXXX.hex (ejemplo: PK2V023200.hex).
El sistema de desarrollo renovara el Sistema Operativo y podrá usarlo de nuevo sin
problemas.

25
10. Repentinamente el programador dejo de funcionar.

a. De un momento a otro el programador se daño, lo conecto al puerto USB de


mi computador y el led verde comienza a titilar y al abrir el software pickit2 el
programa dice:
“Pickit 2 not found. Check USB connections and use tools- check
communication to retry”

b. Hace unos meses le compre un quemador de pic usb, funcionaba bien con el
programa pickit 2, pero un dia lo conecte, alumbro el bombillo rojo pero cuando
abria el pickit 2 no chequeaba comunicacion con el quemador, decia:
“Pickit 2 not found. Check USB connections and use tools- check
communication to retry”.

c. El programador se daño, no se como se desprogramo, en la manana estaba


programando bien y en la tarde ya no funciono.
Al conectarlo el led rojo enciende, el led verde no enciende y cuando le doy que
chequee la comuniciacion se bloquea el programa.
El computador emite un sonido de conexion, pero en el administrador de
dispositivos no cambia nada. Pareciese que el programador se hubiera
desprogramado o dañado porque bloquea el software y/o el PC hasta que lo
desconecto.

Que puede ser?

El daño se debe a que de alguna forma el Sistema Operativo del sistema de desarrollo
se corrompió al igual que en la pregunta anterior, pero en esta ocasión el error fue en
un sector de memoria crucial para el funcionamiento y conexión al PC. Esto se debió
a algún problema en el momento de la conexión con el PC.

La solucion es la siguiente:

26
1. Necesita un cable comun de protoboard.

Si tiene conectado el programador al PC, desconectelo.

Localize el PIC18f2550 que hay en el programador.


Con un cable comun conecte temporalmente el pin 26 del micro al pin 19 del mismo
(cable verde en la foto).
Verifique una buena conexion.
Ahora conecte el programador al PC.
Inmediatamente debe comenzar a parpadear el led verde del programador.
Si no ocurre el parpadeo, intentelo de nuevo grantizando la conexion entre el pin 26 y
el pin 19 del PIC18f2550.

2. Luego de que parpadee, puede desconectar el cable de protoboard, mantenga el


programador conectado al PC.
Vaya a la pestaña Tools y luego seleccione "Download PICkit 2 Operating System".
Vaya a la carpeta donde tiene instalado el PICkit2 (normalmente C:\Archivos de
programa\Microchip\PICkit 2 v2)
y seleccione el archivo PK2V02XXXX.hex que se encuentra en la carpeta.
Luego de programado el OS el programador debe volver a funcionar normalmente.

27