Академический Документы
Профессиональный Документы
Культура Документы
MOVILTRONICS
CONTENIDO:
1. Programación 3
2. Depuración 12
3. Herramienta UART 15
4. Herramienta lógica 16
6. Actualizaciones 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:
2
PROGRAMACIÓN.
3
NOTA: No olvide borrar el microcontrolador antes de programarlo.
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).
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
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)
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:
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
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.
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.
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).
Ejemplos de conexión:
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.
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 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.
Ú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.
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.
MODO Analyzer:
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.
19
ACTUALIZACIONES.
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.
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”.
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.
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.
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.
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.
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.
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.
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:
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.
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”.
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.
27