manual usuario

42
iPROG18 Programador USB para Microcontroladores PIC’s Manual de Usuario y Primeros Pasos Versión 1.2.0.0 Febrero 2009 © ROSO Electric Supply Teléfono (0241) 8426384 • Cel (0414) 4266490 www.roso-control.com [email protected]

Upload: tecnicoloco

Post on 18-Nov-2014

253 views

Category:

Documents


20 download

TRANSCRIPT

Page 1: Manual Usuario

iPROG18

Programador USB para Microcontroladores PIC’s

Manual de Usuario y Primeros Pasos

Versión 1.2.0.0 Febrero 2009

© ROSO Electric Supply

Teléfono (0241) 8426384 • Cel (0414) 4266490 www.roso-control.com • [email protected]

Page 2: Manual Usuario

ÍNDICE GENERAL

Pág. CAPITULO 1 Introducción - Requerimientos mínimos del PC 3 Características del iPROG18 4 CAPITULO 2 Instalación del Software 5 CAPITULO 3 Descripción del software iPROG 7 Barra general del menú 8 Herramientas 9 Restauración de configuración inicial 9 Menú de dispositivos Manual/Auto 10 Íconos de Información 12 CAPITULO 4 Dispositivos soportados 13 Microcontroladores gama Base y gama Media 13 Microcontroladores línea: PIC18F, PIC18FxJ y PIC24FJ 14 Microcontroladores línea: dsPIC30 y dsPIC33 15 Memorias EEprom bus I2C y Bus SPI 15 Conexiones entre los PIC’s®, Eeprom y el iPROG18 16 Otros microcontroladores con conexiones especiales 24 CAPITULO 5 Primeros Pasos 25 Conectando un microcontrolador para la programación ICSP 25 CAPITULO 6 UART/SCOPE 32 La herramienta UART en detalle 33 Resumen de pasos para la correcta visualización de datos mediante el UART 36 La herramienta SCOPE en detalle 37 Resumen de pasos para la correcta visualización de datos mediante el SCOPE 39 Utilizando SCOPE con números en punto flotante 40 CAPITULO 7 iBASE_01. Base de programación universal 42 Características 42

Page 3: Manual Usuario

3

III NNN TTT RRR OOO DDD UUU CCC CCC III ÓÓÓ NNN El programador iPROG18, es un equipo pequeño pero de muy alta tecnología, con el cual, podrá programar la totalidad de los microcontroladores PIC® de las diversas series “FLASH” 10F/12F/16F/18F/18FxJ/24FxJ/24HJ/dsPIC30F/dsPIC33 y las memorias EEprom de las series 24xC y 25xC. Ha sido diseñado para usted, procurando mantener un balance adecuado entre prestaciones y costo con el objetivo de lograr un producto de alta calidad al menor precio posible. Ya no tendrá que preocuparse más al momento de programar su microcontrolador, pues el software que acompaña al programador (el iPROG) es increíblemente estable y su uso es tan simple que lo sorprenderá. No importa si escribió sus programas en ensamblador, C, Basic ó cualquier otro lenguaje; el software iPROG le permite descargar al microcontrolador PIC® su código compilado *.hex en cuestión de segundos. El propósito de este manual es:

• Presentar las características, potencialidades y ventajas del iPROG18. • Guiarlo durante el proceso de instalación del software incluido en el CD-ROM. • Suministrarle un conjunto de ejemplos e instrucciones de utilización que harán de su

experiencia con los programadores todo un éxito. Antes de continuar, tomaremos un tiempo para revisar el contenido del material que acompaña a su sistema:

• Un (1) Equipo de programación de microcontroladores PIC®, modelo iPROG18. • Un (1) CD ó DVD con programa de instalación, manuales y bibliografía anexa. • Un (1) Adaptador para protoboard 6P. • Un (1) Cable de programación USB A a mini USB 5P. • Un (1) CD ó DVD con ejemplos, compiladores y/o bibliografía anexa. • Un (1) Base de programación para PIC 8/14/18/20/28 y 40 Pines modelo iBASE.

Requerimientos mínimos del computador.

• Procesador Pentium 266 MHz o superior. • Memoria Ram 512 KByte. • Espacio disponible HD 20 MBytes • Unidad de CD ROM y/o DVD. • Puerto de comunicaciones USB. • Sistema Operativo Windows XP® y/o Vista®.

CCC AAA PPP III TTT UUU LLL OOO

1

Page 4: Manual Usuario

4

Características del iPROG18. El programador iPROG18 se encuentra en continuo proceso de actualización por parte del fabricante. Tanto el software como el hardware incluyen las últimas innovaciones para proporcionar a usted una herramienta poderosa, sólida y bien construida, pensada para resistir un trato duro y aún así brindar un acabado profesional. El iPROG18, permite ser montado sobre un protoboard estándar, de esta forma, usted podrá armar y probar sus circuitos electrónicos con comodidad. El programador no necesita ser alimentado con una fuente de tensión externa, por el contrario; toma el voltaje de alimentación directamente del puerto USB del computador. Usted podrá entonces, alimentar a sus circuitos electrónicos directamente de la salida de voltaje del programador hasta 400 ma de carga por puerto USB sin inconvenientes. Las dimensiones del programador son apenas de: 6.2 cm de longitud x 1.5 cm de ancho, del tamaño de un “Pen drive”, lo cual, lo convierte en el programador más pequeño y completo del mercado.

Características generales del programador iPROG18:

1. Conector mini USB 5P. 2. Led bicolor (verde/rojo). Verde señaliza alimentación USB. Rojo la actividad del

programador en la lectura, programación y verificación del microcontrolador. 3. Microcontrolador PIC18F2550. Es el CPU del programador. 4. Resonador de 20 MHz. Puede venir con diferentes tipos de empaques. 5. Resistencias limitadoras de corriente y protección del programador. 6. Conector estándar de 6 Polos 0.1” de separación entre pines. 7. Regulador de voltaje del sistema de programación. 8. Selector de voltaje de operación 3.3 Vdc ó 5.0 Vdc, sólo disponible en hardware a

partir de la versión 1.2.0.0. ó superior.

Otras características:

• Se conectan a cualquier protoboard y/o a la base de programación iBASE_01 incluida. • Capacidad para programar a los microcontroladores en circuito ICSP. • Interfaz USB lista para conectar directamente al PC, drivers USB incluidos. • No requieren de una fuente de poder externa ya que se alimenta del propio puerto

USB. Puede alimentar los circuitos conectados en el protoboard (hasta 400 mA). • Totalmente compatible con los compiladores de Microchip™ MPLAB®,

Mikroelectronika®, Proteus™, Proton®, MBASIC®, CCS® y PBASIC® entre otros. • El software es actualizable de forma gratuita. Las actualizaciones se descargan desde

Internet desde la web del fabricante. www.roso-control.com • Versiones actuales del software son totalmente compatibles con el hardware anterior.

La nueva versión del iPROG18, incluye un selector de Voltaje 3.3/5.0 VDC. Ahora usted podrá programar todos los micro -controladores serie F de Microchip.

Page 5: Manual Usuario

5

III NNN SSS TTTAAA LLL AAA CCC III ÓÓÓ NNN DDD EEE LLL SSS OOO FFF TTT WWWAAA RRR EEE El iPROG18, se acompaña de un CD de instalación que contiene todos los elementos necesarios para su utilización. La instalación del software es sencilla, con una interfaz para Windows® muy amigable. Le agradecemos lea detenidamente las siguientes indicaciones antes de continuar.

1 Introduzca el CD que acompaña al programador etiquetado como “iPROG” en la unidad de CD-ROM ó DVD de su PC.

2 Si el programa de instalación no se inicia de forma automática, utilice el explorador de Windows® y haga doble clic sobre el archivo “setup.exe”.

3 Siga las instrucciones en pantalla.

Figura 2.1. Vista principal del instalador del software iPROG.

CCC AAA PPP III TTT UUU LLL OOO

2

Page 6: Manual Usuario

6

4 Una vez instalado el programa, conecte el cable de programación al iPROG18 y posteriormente al PC. En el iPROG18, el LED verde ubicado debajo del conector para el cable USB deberá encender, de lo contrario, desconecte el cable de programación y revise que no exista un cortocircuito en los terminales identificados como +5V y GND del programador y el protoboard.

5 El computador le indicará que se ha detectado un nuevo hardware y automáticamente

instalará los controladores (“drivers”) como se muestra en la figura 2.2. Usted no tendrá que instalar ningún “drivers”, como se dijo, esta actividad es desarrollada en forma automática.

Figura 2.2. Instalación automática de controladores del iPROG.

Una vez concluida la instalación, dentro del Menú de inicio/Programas/iPROG, usted encontrará acceso directo a los siguientes archivos:

• Programa ejecutable iPROG.exe , se mostrará también en el escritorio. • Archivo de texto léeme con indicaciones importantes acerca de dispositivos soportados. • Manual_Usuario, manual del usuario en formato *.pdf.

Figura 2.3. Accesos directos al programa iPROG desde el menú principal de Windows®.

Nota. La versión más actualizada del entorno de programación se encuentra en Internet en la dirección www.roso-control.com. Las nuevas versiones incorporan mejoras en la presentación del programa y la actualización de la lista de microcontroladores PIC®. A medida que el fabricante dispone de nuevos microcontroladores, se hace necesario que usted consulte la actualización del programa. La versión 1.2.0.0. incluye entre otras, la posibilidad de trabajar a los microcontroladores PIC® en voltajes de 3.3 VDC y 5.0 VDC, lo que implica que podrá ahora programar los microcontroladores tipo PIC18Jx de bajo voltaje, los PIC24J y H y los dsPIC33 que trabajan a 3.3. Volt DC. Más adelante se detalla la lista completa de microcontroladores soportados por el programador.

Page 7: Manual Usuario

7

DDD EEE SSS CCC RRR III PPP CCC III ÓÓÓ NNN DDD EEE LLL SSS OOO FFF TTT WWWAAA RRR EEE

La pantalla principal del programa iPROG, se presenta en la figura 3.1.

Figura 3.1. Vista general del programa iPROG.exe

CCC AAA PPP III TTT UUU LLL OOO

3

Page 8: Manual Usuario

8

1. Barra de identificación, minimizar y maximizar el programa iPROG. 2. Menú principal del programa, se encuentran disponibles las siguientes opciones:

a. Archivo. Para realizar operaciones de importar y exportar archivos *.hex.

Importar Archivo *.hex: Importa el contenido de un archivo *.hex al iPROG. Exportar Archivo *.hex: Exporta el contenido del iPROG a un archivo *.hex. Salir: Termina la ejecución del programa.

b. Dispositivo. Selecciona la gama del PIC® y/o memorias EEprom a Seleccionar.

c. iPROG. Operaciones básicas de lectura, escritura y verificación del PIC®.

Permite la realización de las operaciones básicas del programador tales como: Leer, escribir, verificar y borrar el dispositivo. Cuando se selecciona “Verificar al escribir”, se realiza la verificación de la escritura en forma automática.

Page 9: Manual Usuario

9

d. Herramientas. Protección de códigos, velocidad, registros del OSC, tipo programación y Menú de dispositivos Manual y/o automático.

Habilitar Protección Código: Cuando selecciona ésta opción, el programador escribirá el programa en el PIC®,

de tal forma, que nadie podrá leer su contenido. Esto permitirá poner a buen resguardo su trabajo, inversión y propiedad intelectual. Nadie podrá copiar su programa.

Habilitar Protección Datos: Cuando selecciona ésta opción, el programador escribirá el programa en el PIC®,

de tal forma, que nadie podrá leer el contenido de la memoria Eeprom. Ajustar OSCCAL: Permite configurar el registro interno OSCCAL que poseen algunos PIC®, tales

como, los microcontroladores de la gama baja. Restaurar Configuración Inicial: Aunque existe muy poca probabilidad de que el programador pierda el sistema

operativo, en algunas ocasiones y debido a una mala operación u operación indebida por parte del usuario como conexión y desconexión inadecuada del puerto USB, desconexión del programador (en funcionamiento) del puerto USB de manera abrupta; puede perderse el sistema operativo del programador. Cuando ello ocurre, el LED bicolor encenderá de color verde en forma continua y de color rojo en forma intermitente. El software iPROG incluye un algoritmo de detección de fallas, el cual, discrimina en forma autónoma cuando el programador requiere la carga de su sistema operativo con los valores iniciales cargados en fábrica. En la siguiente figura se muestra el mensaje que le presentará el programa iPROG antes de realizar la carga del sistema operativo.

Si este mensaje es visualizado, tendrá que ejecutar la opción “Restaurar

Configuración Inicial”, la cual, se encuentra en el menú principal, opción Herramientas. Es importante hacer notar, de que esta opción se encuentra inhabilitada a menos de que el software detecte un mal funcionamiento del programador, en cuyo caso, habilitará la opción de restaurar la configuración inicial.

El proceso de carga del sistema operativo en firmware, se realiza en forma automática, si por algún motivo el programador está imposibilitado para recibir el sistema operativo, deberá consultar al fabricante: www.roso-control.com

Page 10: Manual Usuario

10

Programación Rápida: Permite seleccionar la velocidad de escritura en el PIC® (alta o baja). ¿Para qué?.

Normalmente cuando se programa un PIC® en forma ICSP, los pines (PGD y PGC) del microcontrolador se conectan solamente al programador y se puede utilizar máxima velocidad de programación sin presentarse ningún incon_ teniente. Sin embargo, si existe alguna carga conectada en esos pines tales como: LED indicadores, bobinas, contactos e incluso si el pin del PIC® está siendo utilizado como entrada de señales; existe la posibilidad de que la programación a alta velocidad no pueda programar al PIC® en forma correcta, en tal caso; se deberá utilizar la programación a baja velocidad, la cual, con_ sume más tiempo, pero es más tolerante a las cargas conectadas a los pines (PGD y PGC) del microcontrolador, al momento de su programación.

Menú de dispositivos Manual/Auto: Cuando se ejecuta el programa bajo la modalidad automática el programa

funcionará, tal cual, las versiones anteriores a la 1.2.0.0. Lo que significa, que todo microcontrolador conectado al programador será automáticamente reconocido. Por el contrario, si la opción elegida es la manual, el programa iPROG desplegará una lista de todos los microcontroladores disponibles en ésta versión para su programación. Esta nueva adecuación, permitirá en futuras versiones construir una base de programación universal de 40 pines del tipo ZIF, donde todos los microcontroladores, no importando su empaque, se podrán programar con la misma base y en una única posición. Esto facilitará enormemente la programación de los microcontroladores.

e. UART/SCOPE.

Sin duda, la incorporación de un UART/SCOPE se traduce en innumerables beneficios para el usuario. Para aquellas personas que desconocen su significado el UART/SCOPE se puede definir como un módulo de interfaz hombre máquina, lo cual, en palabras simples permite la visualización de datos del programa en forma de texto (UART) o en forma Gráfica (SCOPE). Existe un capítulo completo donde se desarrolla el tema del UART/SCOPE al igual, se presentan diversos ejemplos para su utilización.

e. Ayuda. Archivos de ayuda disponibles.

Page 11: Manual Usuario

11

3. Información relacionada con el microcontrolador

utilizado, No. del dispositivo, familia a la cual pertenece (Gama baja, Gama Alta, PIC18F, dsPIC30 y/o EEPROMS), identificación del dispositivo, BandGap y Oscal, Checksum y configuración del dispositivo. Esta información es muy importante para la

depuración de un programa, debido a que se pueden leer la configuración de todos los registros internos de configuración (Fuses) .

4. Barra de progreso de la operación en curso en porcentaje del total de su duración.

5. Operaciones básicas del programador, tales como: lectura, escritura y verificación de la programación, /MCLR: coloca el pin del microcontrolador denominado “master clear” en estado activo.

6. Voltaje Vdd. Muestra en tiempo real el voltaje de alimentación del puerto USB del computador. Su valor deberá ser 5 VDC ± 10%.

7. Voltaje Vpp. Muestra en tiempo real el voltaje del convertidor DC-DC utilizado para la programación de la memoria FLASH de los microcontroladores y/o Memorias Eeprom. Su valor deberá ser 12 VDC ± 10%.

8. Reset. Al presionar éste botón se producirá un reset general e inicialización del programador iPROG18.

9. Memoria de Programa: Permite visualizar y editar el contenido de la memoria de programa o memoria Flash en el microcontrolador y/o memoria Eeprom en las memorias del tipo 24xC y 25xC.

10. Memoria de Datos: Permite visualizar y editar el contenido de la memoria Eeprom de los microcontroladores PIC®.

11. Iconos de Información: Se utilizan como elementos de animación e información sobre

cada una de las tareas completadas por el programador. Los íconos más importantes son mostrados a continuación.

Page 12: Manual Usuario

12

12. Barra de estado e información: Es una barra especializada que muestra información sobre la operación del programador. En esta barra usted encontrará una información detallada acerca de los procesos realizados: lectura, escritura y verificación de la programación. Al mismo tiempo, se muestran algunos mensajes como se observa en la siguiente figuras, entre otros:

Page 13: Manual Usuario

13

DDD III SSS PPP OOO SSS III TTT III VVV OOO SSS SSS OOO PPP OOO RRR TTTAAA DDD OOO SSS

El software iPROG es completamente actualizable en forma gratuita a través de nuestra página web: www.roso-control.com. Actualmente, el programa soporta los siguientes microcontroladores PIC® y memorias EEprom.

Programador : iPROG18 Versión : 1.2.0.0. Fecha : Febrero 2009 O.S. : Windows Xp®, Vista® PDF : Manual_Usuario.pdf PDF : Leeme Revisión : J. Rodríguez. MICROCONTROLADORES LÍNEA: Gama Base iPROG18 con selector de Voltaje = 5.0 VDC PIC10F200 PIC10F202 PIC10F204 PIC10F206 PIC10F220 PIC10F222 PIC12F508 PIC12F509 PIC12F510 PIC12F519 PIC16F505 PIC16F506 PIC16F526 PIC16F54 PIC16F57 PIC16F59

MICROCONTROLADORES LÍNEA: Gama Media iPROG18 con selector de Voltaje = 5.0 VDC

PIC12F609 PIC12HV609 PIC12F615 PIC12HV615 PIC12F629 PIC12F635 PIC12F675 PIC12F683 PIC16F610 PIC16HV610 PIC16F616 PIC16HV616 PIC16F627 PIC16F627A PIC16F628 PIC16F628A PIC16F630 PIC16F631 PIC16F636 PIC16F639 PIC16F648A PIC16F676 PIC16F677 PIC16F684 PIC16F685 PIC16F687 PIC16F688 PIC16F689 PIC16F690 PIC16F72 PIC16F73 PIC16F74 PIC16F76 PIC16F77 PIC16F716 PIC16F737 PIC16F747 PIC16F767 PIC16F777 PIC16F785 PIC16HV785 PIC16F84A PIC16F87 PIC16F88 PIC16F818 PIC16F819 PIC16F870 PIC16F871 PIC16F872 PIC16F873 PIC16F873A PIC16F874 PIC16F874A PIC16F876 PIC16F876A PIC16F877 PIC16F877A PIC16F882 PIC16F883 PIC16F884 PIC16F886 PIC16F887 PIC16F913 PIC16F914 PIC16F916 PIC16F917 PIC16F946

CCC AAA PPP III TTT UUU LLL OOO

4

Page 14: Manual Usuario

14

MICROCONTROLADORES LÍNEA: PIC18F iPROG18 con selector de Voltaje = 5.0 VDC PIC18F242 PIC18F248 PIC18F252 PIC18F258 PIC18F442 PIC18F448 PIC18F452 PIC18F458 PIC18F1220 PIC18F1230 PIC18F1320 PIC18F1330 PIC18F2220 PIC18F2221 PIC18F2320 PIC18F2321 PIC18F2331 PIC18F2410 PIC18F2420 PIC18F2423 PIC18F2431 PIC18F2450 PIC18F2455 PIC18F2458 PIC18F2480 PIC18F2510 PIC18F2515 PIC18F2520 PIC18F2523 PIC18F2525 PIC18F2550 PIC18F2553 PIC18F2580 PIC18F2585 PIC18F2610 PIC18F2620 PIC18F2680 PIC18F2682 PIC18F2685 PIC18F2685 PIC18F4220 PIC18F4221 PIC18F4320 PIC18F4321 PIC18F4331 PIC18F4410 PIC18F4420 PIC18F4423 PIC18F4431 PIC18F4450 PIC18F4455 PIC18F4458 PIC18F4480 PIC18F4510 PIC18F4515 PIC18F4520 PIC18F4523 PIC18F4525 PIC18F4550 PIC18F4553 PIC18F4580 PIC18F4585 PIC18F4610 PIC18F4620 PIC18F4680 PIC18F4682 PIC18F4685 PIC18F6310 PIC18F6390 PIC18F6393 PIC18F6410 PIC18F6490 PIC18F6493 PIC18F6520 PIC18F6525 PIC18F6527 PIC18F6585 PIC18F6620 PIC18F6621 PIC18F6622 PIC18F6627 PIC18F6628 PIC18F6680 PIC18F6720 PIC18F6722 PIC18F6723 PIC18F8310 PIC18F8390 PIC18F8393 PIC18F8410 PIC18F8490 PIC18F8493 PIC18F8520 PIC18F8525 PIC18F8527 PIC18F8585 PIC18F8620 PIC18F8621 PIC18F8622 PIC18F8627 PIC18F8628 PIC18F8680 PIC18F8720 PIC18F8722 PIC18F8723

MICROCONTROLADORES LÍNEA: PIC18FxJ iPROG18 con selector de Voltaje = 3.3 VDC

PIC18F24J10 PIC18LF24J10 PIC18F25J10 PIC18LF25J10 PIC18F44J10 PIC18LF44J10 PIC18F45J10 PIC18LF45J10 PIC18F63J11 PIC18F63J90 PIC18F64J11 PIC18F64J90 PIC18F65J10 PIC18F65J11 PIC18F65J15 PIC18F65J50 PIC18F65J90 PIC18F66J10 PIC18F66J11 PIC18F66J15 PIC18F66J16 PIC18F66J50 PIC18F66J55 PIC18J66J60 PIC18F66J65 PIC18F67J10 PIC18F67J11 PIC18F67J50 PIC18F67J60 PIC18F83J11 PIC18F83J90 PIC16F84J11 PIC18F84J90 PIC18F85J10 PIC16F85J11 PIC18F85J15 PIC18F85J50 PIC18F85J90 PIC18F86J10 PIC18F86J11 PIC18F86J15 PIC18F86J16 PIC18F86J50 PIC18F86J55 PIC18F86J60 PIC18F86J65 PIC18F87J10 PIC18F87J11 PIC18F87J50 PIC18F87J60 PIC18F96J60 PIC18F96J65 PIC18F97J60

MICROCONTROLADORES LÍNEA: PIC24FJ iPROG18 con selector de Voltaje = 3.3 VDC

PIC24FJ16GA002 PIC24FJ16GA004 PIC24FJ32GA002 PIC24FJ32GA004 PIC24FJ48GA002 PIC24FJ48GA004 PIC24FJ64GA002 PIC24FJ64GA004 PIC24FJ64GA006 PIC24FJ64GA008 PIC24FJ64GA010 PIC24FJ96GA006 PIC24FJ96GA008 PIC24FJ96GA010 PIC24FJ128GA006 PIC24FJ128GA008 PIC24FJ128GA010

Page 15: Manual Usuario

15

MICROCONTROLADORES LÍNEA: PIC24HJ iPROG18 con selector de Voltaje = 3.3 VDC

PIC24HJ12GP201 PIC24HJ12GP202 PIC24HJ16GP304 PIC24HJ32GP202 PIC24HJ32GP204 PIC24HJ64GP206 PIC24HJ64GP210 PIC24HJ64GP506 PIC24HJ64GP510 PIC24HJ128GP206 PIC24HJ128GP210 PIC24HJ128GP306 PIC24HJ128GP310 PIC24HJ128GP506 PIC24HJ128GP510 PIC24HJ256GP206 PIC24HJ256GP210 PIC24HJ256GP610

MICROCONTROLADORES LÍNEA: dsPIC30 iPROG18 con selector de Voltaje = 5.0 VDC

dsPIC30F2010 dsPIC30F2011 dsPIC30F2012 dsPIC30F3010 dsPIC30F3011 dsPIC30F3012 dsPIC30F3013 dsPIC30F3014 dsPIC30F4011 dsPIC30F4012 dsPIC30F4013 dsPIC30F5011 dsPIC30F5013 dsPIC30F5015 dsPIC30F5016 dsPIC30F6010A dsPIC30F6011A dsPIC30F6012A dsPIC30F6013A dsPIC30F6014A dsPIC30F6015 MICROCONTROLADORES LÍNEA: dsPIC33 iPROG18 con selector de Voltaje = 3.3 VDC

dsPIC33FJ12GP201 dsPIC33FJ12GP202 dsPIC33FJ16GP304 dsPIC33FJ32GP202 dsPIC33FJ32GP204 dsPIC33FJ64GP206 dsPIC33FJ64GP306 dsPIC33FJ64GP310 dsPIC33FJ64GP706 dsPIC33FJ64GP708 dsPIC33FJ64GP710 dsPIC33FJ128GP206 dsPIC33FJ128GP306 dsPIC33FJ128GP310 dsPIC33FJ128GP706 dsPIC33FJ128GP708 dsPIC33FJ128GP710 dsPIC33FJ256GP506 dsPIC33FJ256GP510 dsPIC33FJ256GP710 dsPIC33FJ12MC201 dsPIC33FJ12MC202 dsPIC33FJ16MC304 dsPIC33FJ32MC202 dsPIC33FJ32MC204 dsPIC33FJ64MC506 dsPIC33FJ64MC508 dsPIC33FJ64MC510 dsPIC33FJ64MC706 dsPIC33FJ64MC710 dsPIC33FJ128MC506 dsPIC33FJ128MC510 dsPIC33FJ128MC706 dsPIC33FJ128MC708 dsPIC33FJ128MC710 dsPIC33FJ256MC510 dsPIC33FJ256MC710

MEMORIAS SERIALES EEPROM: BUS I2C iPROG18 con selector de Voltaje = 3.3 VDC y/o 5.0 VDC dependiendo del tipo de memoria eeprom

24LC00 24LC01B 24LC02B 24LC04B 24LC08B 24LC16B 24LC32A 24LC64 24LC128 24LC256 24LC512 24LC1025 MEMORIAS SERIALES EEPROM: BUS SPI iPROG18 con selector de Voltaje = 3.3 VDC y/o 5.0 VDC dependiendo del tipo de memoria eeprom

25LC010A 25LC020A 25LC040A 25LC080A 25LC080B 25LC160A 25LC160B 25LC320A 25LC128 25LC256 25LC512 25LC640A 25LC1024 Nota: Aquellos programadores iPROG18 anteriores a la versión 1.2.0.0, sólo podrán programar los microcontroladores en 5.0 VDC. Todas las demás funcionalidades del programa estarán disponibles incluyendo: La restauración inicial y las herramientas UART/SCOPE.

Page 16: Manual Usuario

16

Conexiones entre los PIC’s, Eeprom y el iPROG18

Dependiendo del modelo del microcontrolador PIC®, existirá una conexión posible entre sus pines y los del programador. En general cada gama ó familia de microcontroladores tiene su propio esquema de conexión, el cual, difiere de familia en familia y en base al número de pines del empaque del microcontrolador PIC®. Por ello, se deberá consultar la hoja de especificaciones de cada PIC® en particular a fin de identificar cuales son los pines de alimentación (Vdd, Vss), master clear (/MCL) y de programación (PGD, PGC). En general se puede tomar como referencia las conexiones que se presentan a continuación: PIC’S DE 8 PINES MODELOS PIC10Fxxx iPROG18 con selector de Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin PIC10F Pin ----------------------------------- (1) /MCLR (8) /MCLR (2) VDD (2) VDD (3) VSS (7) VSS (4) PGD (5) PGD (5) PGC (4) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 10Fxxx

Microcontroladores que comparten ésta

conexión: PIC10F200 PIC10F202 PIC10F204 PIC10F206 PIC10F220 PIC10F222

PIC’S DE 8 PINES MODELOS PIC12Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC12F Pin ----------------------------------- (1) /MCLR (4) /MCLR (2) VDD (1) VDD (3) VSS (8) VSS (4) PGD (7) PGD (5) PGC (6) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 8/14/20

Microcontroladores que comparten ésta

conexión: PIC12F508 PIC12F509 PIC12F510 PIC12F519 PIC12F609 PIC12F615 PIC12F629 PIC12F635 PIC12F675 PIC12F683

Page 17: Manual Usuario

17

PIC’S DE 14 PINES MODELOS PIC16Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC16F Pin ----------------------------------- (1) /MCLR (4) /MCLR (2) VDD (1) VDD (3) VSS (14) VSS (4) PGD (13) PGD (5) PGC (12) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 8/14/20

Microcontroladores que comparten ésta

conexión: PIC16F505 PIC16F506 PIC16F526 PIC16F610 PIC16F616 PIC16F630 PIC16F636 PIC16F676 PIC16F684 PIC16F688

PIC’S DE 18 PINES MODELOS PIC16Fxxx, PIC18Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC16/18F Pin ----------------------------------- (1) /MCLR (4) /MCLR (2) VDD (14) VDD (3) VSS (5) VSS (4) PGD (13) PGD (5) PGC (12) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 18 Pines

Microcontroladores que comparten ésta

conexión: PIC16F54 PIC16F627 PIC16F627A PIC16F628 PIC16F628A PIC16F648A PIC16F716 PIC16F84A PIC16F87 PIC16F88 PIC16F818 PIC16F819 PIC18F1220 PIC18F1230 PIC18F1320 PIC18F1330

PIC’S DE 20 PINES MODELOS PIC16Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC16/18F Pin ----------------------------------- (1) /MCLR (4) /MCLR (2) VDD (1) VDD (3) VSS (20) VSS (4) PGD (19) PGD (5) PGC (18) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 8/14/20

Microcontroladores que comparten ésta

conexión: PIC16F631 PIC16F639 PIC16F677 PIC16F685 PIC16F687 PIC16F689 PIC16F690 PIC16F785

Page 18: Manual Usuario

18

PIC DE 28 PINES MODELOS PIC16Fxxx, PIC18Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC16/18F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (20) VDD (3) VSS (8/19) VSS (4) PGD (28) PGD (5) PGC (27) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 28

Microcontroladores que comparten ésta

conexión: PIC16F72 PIC16F73 PIC16F76 PIC16F737 PIC16F767 PIC16F870 PIC16F871 PIC16F872 PIC16F873 PIC16F873A PIC16F874 PIC16F874A PIC16F876 PIC16F876A PIC16F882 PIC16F883 PIC16F886 PIC16F913 PIC16F916 PIC18F242 PIC18F248 PIC18F252 PIC18F258 PIC18F2220 PIC18F2221 PIC18F2320 PIC18F2321 PIC18F2331 PIC18F2410 PIC18F2420 PIC18F2423 PIC18F2431 PIC18F2450 PIC18F2455 PIC18F2458 PIC18F2480 PIC18F2510 PIC18F2515 PIC18F2520 PIC18F2523 PIC18F2525 PIC18F2550 PIC18F2553 PIC18F2580 PIC18F2585 PIC18F2610 PIC18F2620 PIC18F2680 PIC18F2682 PIC18F2685

PIC DE 28 PINES MODELOS PIC18FxJ iPROG18 con selector de Voltaje = 3.3 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC18FxJ Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (20) VDD (3) VSS (8/19) VSS (4) PGD (28) PGD (5) PGC (27) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 28

Microcontroladores que comparten ésta

conexión:

PIC18F24J10 PIC18LF24J10 PIC18F25J10 PIC18LF25J10

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 6 del Micro y GND. Voltaje

Vcap/Vddcore.

Page 19: Manual Usuario

19

PIC DE 40 PINES MODELOS PIC16Fxxx, PIC18Fxxx iPROG18 con selector de Voltaje = 5.0 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC16/18F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (11/32) VDD (3) VSS (12/31) VSS (4) PGD (40) PGD (5) PGC (39) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 40

Microcontroladores que comparten ésta

conexión: PIC16F77 PIC16F747 PIC16F777 PIC16F877 PIC16F877A PIC16F884 PIC16F887 PIC16F914 PIC16F917 PIC18F442 PIC18F448 PIC18F452 PIC18F458 PIC18F4220 PIC18F4221 PIC18F4320 PIC18F4321 PIC18F4331 PIC18F4410 PIC18F4420 PIC18F4423 PIC18F4431 PIC18F4450 PIC18F4455 PIC18F4458 PIC18F4480 PIC18F4510 PIC18F4515 PIC18F4520 PIC18F4523 PIC18F4525 PIC18F4550 PIC18F4553 PIC18F4580 PIC18F4585 PIC18F4610 PIC18F4620 PIC18F4680 PIC18F4682 PIC18F4685

PIC DE 40 PINES MODELOS PIC18FxJ iPROG18 con selector de Voltaje = 3.3 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC18FxJ Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (11/32) VDD (3) VSS (12/31) VSS (4) PGD (40) PGD (5) PGC (39) PGC (6) AUX Base de Conexión: iBASE-01 Posición: Base 40

Microcontroladores que comparten ésta

conexión:

PIC18F44J10 PIC18LF44J10 PIC18F45J10 PIC18LF45J10

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 6 del Micro y GND. Voltaje

Vcap/Vddcore.

Page 20: Manual Usuario

20

PIC’S DE 18 PINES MODELOS PIC24HJ iPROG18 con selector de Voltaje = 3.3 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC24HJ Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (18) VDD (3) VSS (13/17) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

PIC24HJ12GP201

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 14 del Micro y GND. Voltaje

Vcap/Vddcore.

PIC’S DE 28 PINES MODELOS PIC24HJ iPROG18 con selector de Voltaje = 3.3 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC24HJ Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (13) VDD (3) VSS (8/19) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

PIC24HJ12GP202 PIC24HJ32GP202

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 20 del Micro y GND. Voltaje

Vcap/Vddcore.

PIC DE 28 PINES MODELOS PIC24FJ iPROG18 con selector de Voltaje = 3.3 VDC Conexiones: ----------------------------------- iPROG18 Pin PIC24FJ Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (13/28) VDD (3) VSS (8/27) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

PIC24FJ16GA002 PIC24FJ32GA002 PIC24FJ48GA002 PIC24FJ64GA002

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 20 del Micro y GND. Voltaje

Vcap/Vddcore.

Page 21: Manual Usuario

21

PIC’s DE 18 PINES MODELOS dsPIC30Fxxxx iPROG18 con selector de Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC30F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (14) VDD (3) VSS (13) VSS (4) PGD (11) PGD (5) PGC (12) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión: dsPIC30F2011 dsPIC30F3012

PIC’s DE 28 PINES MODELOS dsPIC30Fxxxx iPROG18 con selector de Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC30F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (20) VDD (3) VSS (8/19) VSS (4) PGD (17) PGD (5) PGC (18) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión: dsPIC30F2012 dsPIC30F2020 dsPIC30F3010 dsPIC30F3013 dsPIC30F4012

PIC’s DE 40 PINES MODELOS dsPIC30Fxxxx iPROG18 con selector de Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC30F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (11/21/32) VDD (3) VSS (12/20/31) VSS (4) PGD (25) PGD (5) PGC (26) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión: dsPIC30F3011 dsPIC30F4011

Page 22: Manual Usuario

22

PIC’s DE 18 PINES MODELOS dsPIC33Fxxxx iPROG18 con selector de Voltaje = 3.3 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC33F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (18) VDD (3) VSS (13/17) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

dsPIC33FJ12GP201

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 14 del Micro y GND. Voltaje

Vcap/Vddcore.

PIC’s DE 20 PINES MODELOS dsPIC33Fxxxx iPROG18 con selector Voltaje = 3.3 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC33F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (20) VDD (3) VSS (6/19) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

dsPIC33J12MC201

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 14 del Micro y GND. Voltaje

Vcap/Vddcore.

PIC’s DE 28 PINES MODELOS dsPIC33Fxxxx iPROG18 con selector de Voltaje = 3.3 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC33F Pin ----------------------------------- (1) /MCLR (1) /MCLR (2) VDD (13) VDD (3) VSS (8/19) VSS (4) PGD (4) PGD (5) PGC (5) PGC (6) AUX Base de Conexión: N/A Posición: N/A

Microcontroladores que comparten ésta

conexión:

dsPIC33FJ12GP202 dsPIC33FJ12MC202

*Nota: Recordar colocar Capacitor de 4.7uF entre el Pin No. 20 del Micro y GND. Voltaje

Vcap/Vddcore.

Page 23: Manual Usuario

23

MEMORIAS EEPROM BUS I2C TIPO 24LCxxx iPROG18 con selector de Voltaje = 3.3 VDC y/o 5.0 VDC dependiendo del tipo de memoria eeprom

Conexiones: ----------------------------------- iPROG18 Pin 24LC Pin ----------------------------------- (2) VDD (8) VDD (3) GND (4) VSS (5) PGC (6) SCL (6) AUX (5) SDA (7) WP (GND) (1/2/3) Ax (GND) Base de Conexión: iBASE-01 Posición: Base 24LC

Memorias que comparten ésta conexión:

24LC00 24LC01B 24LC02B 24LC04B 24LC08B 24LC16B 24LC32A 24LC64 24LC128 24LC256 24LC 512 24LC1025

MEMORIAS EEPROM BUS SPI TIPO 25LCxxx iPROG18 con selector de Voltaje = 3.3 VDC y/o 5.0 VDC dependiendo del tipo de memoria eeprom

Conexiones: ----------------------------------- iPROG18 Pin 25LC Pin ----------------------------------- (1) /MCLR (1) /CS (2) VDD (8) VDD (3) VSS (4) VSS (4) PGD (2) SO (5) PGC (6) SCK (6) AUX (5) SI /HOLD (7) (VDD) /WP (3) (VDD) Base de Conexión: N/A Posición: N/A

Memorias que comparten ésta conexión:

25LC010A 25LC020A 25LC040A 25LC080A 25LC080B 25LC128 25LC160A 25LC160B 25LC256 25LC320A 25LC512 25LC640 25LC1024

Page 24: Manual Usuario

24

OTROS MICROCONTROLADORES PIC’S CON CONEXIONES PARTICULARES

Conexiones: ----------------------------------- iPROG18 Pin PIC16F57 ----------------------------------- (1) /MCLR (28) /MCRL (2) VDD (2) VDD (3) VSS (4) VSS (4) PGD (17) PGD (5) PGC (16) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin PIC16F59 ----------------------------------- (1) /MCLR (14) /MCRL (2) VDD (15/35) VDD (3) VSS (5) VSS (4) PGD (13) PGD (5) PGC (12) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC30F3014 ----------------------------------- (1) /MCLR (1) /MCRL (2) VDD (11/21/32) VDD (3) VSS (12/20/31) VSS (4) PGD (9) PGD (5) PGC (8) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = 5.0 VDC

Conexiones: ----------------------------------- iPROG18 Pin dsPIC30F4013 ----------------------------------- (1) /MCLR (1) /MCRL (2) VDD (11/21/32) VDD (3) VSS (12/20/31) VSS (4) PGD (9) PGD (5) PGC (8) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = 5.0 VDC

Conexiones: (reserva) ----------------------------------- iPROG Pin PIC ----------------------------------- (1) /MCLR ( ) /MCRL (2) VDD ( ) VDD (3) VSS ( ) VSS (4) PGD ( ) PGD (5) PGC ( ) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = VDC

Conexiones: (reserva) ----------------------------------- iPROG Pin PIC ----------------------------------- (1) /MCLR ( ) /MCRL (2) VDD ( ) VDD (3) VSS ( ) VSS (4) PGD ( ) PGD (5) PGC ( ) PGC (6) AUX Base de Conexión: N/A Posición: N/A Selector Voltaje = VDC

Page 25: Manual Usuario

25

PPP RRR III MMM EEE RRR OOO SSS PPPAAA SSS OOO SSS Vamos a comenzar a utilizar el iPROG18, para ello es necesario que ubique claramente cada uno de los componentes. • Programador de microcontroladores iPROG18, ver figura 5.1 • Cable de programación USB, figura 5.2 • Placa experimentación sin soldadura “Protoboard” (no incluida), figura 5.3

Figura 5.1. iPROG18 .

Figura 5.2. Cable de programación USB ->

<- Figura 5.3. El protoboard.

Conectando un Microcontrolador para la programación en circuito. Desde que Microchip incluyó en sus microcontroladores una memoria de programa borrable eléctricamente, la mayoría de estos dispositivos soportan la programación serial en circuito ó ICSP por sus siglas en inglés. Esta forma de programación permite que el circuito integrado pueda ser completamente reprogramado sin necesidad de desconectarlo de la aplicación en la que está instalado. Esto trae una serie de beneficios para el desarrollador/programador, ya que, además de reducir los costos de operación por no requerir la adquisición de bases adaptadoras, le permite actualizar el programa sin desmontar el circuito y añade a sus productos capacidad de actualizarse y mejorarse progresivamente aún estando en operación.

CCC AAA PPP III TTT UUU LLL OOO

5

Page 26: Manual Usuario

26

Por otra parte, la desinstalación de los circuitos integrados suele producir un deterioro importante de los circuitos impresos sobre los cuales están montados disminuyendo el tiempo de vida útil de los mismos y comprometiendo su confiabilidad. Otra ventaja importante del ICSP es que hace mucho más fácil y rápido el desarrollo de sus aplicaciones pues se trabaja con el PIC® siempre conectado al computador eliminando la necesidad de traslado desde el programador hasta el prototipo o protoboard y viceversa, adicionalmente ésta conexión PC-PIC ha permitido desarrollar herramientas de depuración de muy bajo costo pero altamente efectivas y vitales para la escritura de los programas. Para realizar la programación ICSP, se requiere del uso de solamente algunos pines del microcontrolador. Como mínimo es necesario usar a PGD, PGC y /MCLR. En las figuras anexas, se muestra los pasos a seguir para la correcta programación de un PIC®. PASO No. 01 y 02: (Buscar hoja técnica y/o especificaciones del PIC16F648A) (01)

(02)

Page 27: Manual Usuario

27

PASO No. 03 y 04:

PASO No. 05:

Page 28: Manual Usuario

28

PASO No. 06: (Verificar que se ha realizado la conexión mostrada en la siguiente figura).

PASO No. 07: (Correr el programa iPROG y verificar que se detectó al PIC16F648A).

Page 29: Manual Usuario

29

PASO No. 08: (Seleccionar del menú principal la opción Archivo/Importar Archivo)

PASO No. 09:

Seleccionar el archivo *.hex que se desea importar, en este ejemplo se está importando un programa compilado con el compilador BASIC Proton®, el cual, se encuentra al igual que todos los archivos de ejemplos para los PIC’s soportados por el programador iPROG18 en el CD entregado a usted junto al programador, en el directorio: Archivos_Ejemplos. En la práctica, usted deberá importar el archivo *.hex correspondiente al programa que usted realizó.

Page 30: Manual Usuario

30

PASO No. 10:

Verificar que se han cumplido los siguientes pasos después de haber importado el archivo *.hex que contenía su programa.

1. Deberá Indicar el microcontrolador seleccionado. 2. La caja “Memoria de Programa” ahora contendrá datos que serán luego cargados

en la memoria Flash del microcontrolador. 3. La caja “Datos en EEPROM” ahora contendrá datos que serán luego cargados en la

memoria Eeprom del microcontrolador. 4. El icono que se muestra en la figura, indica que la importación fue la correcta. 5. La barra de tareas deberá mostrar el mensaje: “Archivo *.Hex importado

satisfactoriamente” indicando que el programador iPROG realizó la tarea de importar en forma completa y satisfactoria.

Page 31: Manual Usuario

31

PASO No. 11:

Escribir el programa en el microcontrolador. Este paso comienza cuando se presiona el botón “Escribir”, significa pasar el contenido de las cajas “Memoria de Programa” y “Datos en EEPROM” al microcontrolador. Una vez presionado el botón de Escribir, se mostrará:

1. La barra de tareas se habrá completado en un 100%. 2. Se presentará en la barra de estado el mensaje: “El dispositivo se programó con

éxito”. 3. Se presentarán en secuencia los siguientes iconos:

Escribiendo Borrando Escribiendo Verificando Listo. OK

Page 32: Manual Usuario

32

UUUAAARRRTTT///SSSCCCOOOPPPEEE

CCC AAA PPP III TTT UUU LLL OOO

6

Page 33: Manual Usuario

33

La herramienta UART/SCOPE …. UART/SCOPE, es la nueva herramienta de visualización de datos incluida a partir de la versión 1.2.0.0. del software iPROG. Es un interfaz hombre – máquina, el cual, agrega la posibilidad de utilizar el programador no sólo para la programación de los microcontroladores PIC’s® sino también, la visualización de datos tipo Consola (UART) o tipo gráfico (SCOPE). Mediante su utilización usted podrá visualizar a través del monitor de su PC, gran cantidad de información nunca antes disponible en un programador. El la siguiente figura se muestra la pantalla UART/SCOPE disponible a partir de esta versión:

1. Pantalla inicial UART/SCOPE.

2. Resultado de la ejecución del programa UART_00.bas entregado en el CD junto al iPROG18. El listado del programa en Basic PROTOM® lo podemos observar en la siguiente figura:

' iPROG UART UART_00.bas ' --------------------------------------------

Device = 16F877 ' Micro Utilizado XTAL 20 ' Velocidad del Reloj Main: SerOut PORTB.7,32,1,[0,"HOLA MUNDO",13] DelayMS 1000 GoTo Main

Page 34: Manual Usuario

34

Descripción del programa: Este programa en Basic una vez compilado y descargado en el microcontrolador PIC® envía al programa iPROG el comando de control ASCII 0 -> “Clear”, el cual, posiciona el cursor en la primera posición de la ventana y la inicializa. Después envía el mensaje “HOLA MUNDO”, seguido del carácter de control ASCII 13 -> “CR” Control de carro. Este último comando de control es siempre requerido por el programa iPROG como carácter de terminación de datos. La instrucción utilizada en Basic PROTOM® para el envío de la información es:

SerOut PORTB.7,32,1,[0,"HOLA MUNDO",13]

Instrucciones similares se encuentran en forma estándar en otros compiladores como el PBASIC®, MBASIC®, MikroBASIC®, CCS® y diferentes compiladores existentes en el mercado. Si usted está trabajando en lenguaje ensamblador, se recomienda realizar la comunicación serial a través del manejo de los registros internos del PIC®. En detalle cada parte de la instrucción se refiere a: SerOut: Instrucción utilizada para realizar una comunicación serial asíncrona. PORTB.7: Es el “pin” de conexión del PIC®, Puerto B, Pin 7. y es el mismo pin de programación del PIC® pin (PGD). No es necesaria hacer ninguna conexión física entre el microcontrolador y el iPROG18, si ya usted está conectado al programador iPROG a través del puerto USB del PC. 32 : Para el compilador Basic PROTON indica una velocidad de conexión a 19200 BAUD. En general esta constante se puede calcular de la siguiente forma: Valor Ctte = (1000000/Vel. BAUD) – 20. Así, si deseamos obtener diferentes velocidades de conexión entre 4800 BAUD y 40000 BAUD podemos usar los valores mostrados en la siguiente tabla:

Velocidad en BAUD Ctte. Requerida. 4800 188 9600 84 14400 49

19200 * 32 38400 6

* La mayor velocidad de conexión disponible = 40000 BAUD, sin embargo, a fin de obtener los mejores resultados, es recomendable utilizar velocidades cercanas a 19200 BAUD.

1 : Es una pausa “opcional” de 1 ms entre bytes transmitidos. En algunos compila_ ladores se denomina “PACE” al igual que en el UART del microcontrolador. Si su compilador permite el uso de “PACE” no olvide colocarlo como parte de la instrucción. 0 : Comando de control ASCII 0 -> Clear. Este comando como se indicó anterior_ mente lleva el cursor a la primera posición y limpia la pantalla. Es un carácter de control no visible utilizado, al igual que los siguientes caracteres:

CARÁCTER ASCII SIGNIFICADO CARÁCTER ASCII SIGNIFICADO 0 Clear 8 Backspace

3 Cursor izq. <- 9 Tabulador

4 Cursor der. -> 13 Control de Carro

7 Campana Bell

Page 35: Manual Usuario

35

"HOLA MUNDO" : Mensaje enviado desde el microcontrolador PIC®, se visualiza textualmente todo lo encontrado entre las comillas. También es posible visualizar variables junto a sus modificadores de formato, ya sea para valores enteros o en punto flotante. Ejemplo: SerOut PORTB.7,32,1,["Valor = ", DEC VARIABLE, 13] 13 : Carácter de control requerido por el iPROG, al final de los datos. 3. Información de ayuda de la herramienta UART/SCOPE.

4. Selector tipo interruptor (UART a la izquierda / SCOPE a la derecha).

5. Caja de selección de la velocidad de conexión entre el microcontrolador PIC® y el PC en unidades BAUD (bits x seg.) Los datos se deberán enviar en formato 8N1, un bit de arranque, 8 bits de datos, sin paridad y un bit de parada. Mediante esta opción se pueden escoger velocidades de conexión entre 9600 BAUD a 19200 BAUD. También se puede escoger otra velocidad en el rango de 4800 BAUD a 40000 BAUD, la cual, se selecciona a través de un cuadro de dialogo que aparecerá al hacer “clic” con el ratón en la opción “---Otro Valor---”.

6. Una vez seleccionada la velocidad de conexión en BAUD, se habilita el pulsador “Conectar”, el cual, si es presionado hará que el programa iPROG reciba la información serial (asíncrona) en forma continua desde el microcontrolador PIC.®. Por supuesto, previamente hay que cargar en el microcontrolador un programa que envíe información al programa iPROG. Puede utilizar como ejemplo los archivos UART_00.bas, UART_01.bas, UART_02.bas incluidos en el CD junto al programador iPROG18.

7. El botón “Desconectar”, se utiliza como su nombre lo indica, para parar la comunicación serial entre el microcontrolador y el programa iPROG.

8. El botón “Salir”, permite regresar en forma inmediata al menú principal del programa iPROG.

9. UART (“Limpiar”), Al presionar este botón, se hará un reset al microcontrolador seguido de la limpieza de la pantalla y de los buffers de transmisión y recepción USB.

10. Este conjunto de opciones estará disponible sólo cuando esté

activada la opción SCOPE. Mostrar CH. se refiere a mostrar los paneles indicadores digitales que se encuentran en la parte inferior de la pantalla SCOPE. Allí se visualizan los valores que toman cada uno de los tres(03) canales disponibles de la pantalla SCOPE, los caneles se denominan: C0, C1 y C2. Grillas On, permite la visualización o no de las grillas horizontales y verticales de la gráfica SCOPE. “Color Negro”, hace que el fondo de la pantalla pase de color negro a color blanco, a fin de, ahorrar tinta si usted deseara imprimir la gráfica mostrada.

11. El botón “Inicializar”. Al presionar este botón, se hará un reset al microcontrolador seguido de

la limpieza de la pantalla gráfica SCOPE, los indicadores digitales de los canales y de los buffers de transmisión y recepción USB.

12. Selector de tiempo horizontal de la gráfica SCOPE. Mediante este

selector el usuario puede cambiar la escala de tiempo horizontal de la gráfica desde un valor de 10 segundos a 60 minutos. Los valores posibles: 10 segundos, 30 segundos, 1 minuto, 10 minutos, 30 minutos y 60 minitos.

Page 36: Manual Usuario

36

13. y 14. Permite escoger el modo de visualización de los datos sobre el eje horizontal. Si escoge el modo comprimido (13) todos los datos desde el comienzo de la gráfica hasta los actuales se mostrarán sobre el eje horizontal al mismo tiempo. Si por el contrario usted escoge la visualización expandida (14), entonces se mostrarán únicamente los últimos datos que se han almacenado durante el último minuto.

RESUMEN DE PASOS A SEGUIR PARA UNA CORRECTA VISUALIZACIÓN

DE DATOS A TRAVÉS DE LA PANTALLA UART.

1. Utilizar una velocidad de conexión de 19200 BAUD. En forma serial asincrónica con el formato 8N1.

2. Utilizar siempre en la instrucción: SerOut PORTB.7,32,1,[0,"HOLA",13] el re_

tardo de 1 mili-segundo entre bytes transmitidos, denominado PACE.

3. Colocar una pausa o retardo de tiempo de mínimo 15 ms entre comandos SerOut.

4. Colocar una pausa o retardo inicial al programa principal de al menos 1000 ms. Veamos el siguiente ejemplo: UART_02.bas ' Visualización lineal de datos ... ' Para seleccionar la velocidad de conexión entre el PIC y el PC, se utili_ ' zarán las constantes: (84) para 9600 BAUD y (32) para 19200 BAUD como ar_ ' gumento de la función "SerOut". El pin de conexión entre el PIC y el ' computador (PC) será siempre PortB.7. Séptimo bit del puerto B. ' -------------------------------------------------------------------------- Device = 16F877 ' Microcontrolador Utilizado XTAL 20 ' Velocidad del Reloj (resonador) Dim i As Word ' Variable auxiliar DelayMS 1000 ' Retardo inicial requerido por el ' UART, es obligatorio su uso. Main: ' ' El comando 0 hará una limpieza de pantalla y colocará el cursor en la ' primera posición de la pantalla arriba y a la izquierda. ' Comando 0 (Clear) SerOut PORTB.7,32,1,[0] For i=0 To 999 SerOut PORTB.7,32,1,["Valor de i = ",DEC3 i ,13] DelayMS 50 ' Pausa de 50 ms requerida para sincronización Next i GoTo Main Estas recomendaciones son hechas con la finalidad de que obtenga los mejores resultados en la visualización de sus datos. Sin embargo, son sólo sugerencias presentadas en base a las extensas pruebas realizadas a las rutinas de conversión serial a USB.

Page 37: Manual Usuario

37

MODO SCOPE

En este modo usted podrá visualizar los datos enviados desde el microcontrolador PIC® en forma gráfica. La pantalla SCOPE permite la visualización simultánea de tres canales independientes denominados C0, C1 y C2. Estos canales pueden graficar números enteros y números en notación flotante, sin embargo, ciertas consideraciones hay que tomar en cuenta antes de utilizar la herramienta con números en punto flotante. El canal C0, representado en la gráfica con el color azul, es el canal de mayor precisión y puede almacenar hasta un máximo de 7200 puntos de datos en la gráfica. La interpolación utilizada para unir puntos contiguos en la gráfica cuando se utiliza el canal C0, fue la interpolación lineal. Este canal acepta la graficación de números enteros y en punto flotante. El canal C1 por su parte, representado en la gráfica de color rojo, es el segundo en precisión y puede almacenar hasta un máximo de 3600 puntos de datos en la gráfica. Al igual que en el canal C0, el canal C1 utiliza interpolación lineal para unir puntos contiguos en la gráfica y acepta preferiblemente números enteros, sin embargo, también puede ser utilizado para graficar números en punto flotante con menor precisión que con el canal C0. El último canal C3, representado en la gráfica de color verde, es el de menor precisión y puede almacenar hasta un máximo de 3600 puntos de datos en la gráfica. Al diferencia de los otros canales utiliza interpolación diferencial para unir puntos contiguos en la gráfica, lo cual, lo hace muy conveniente para graficar datos boléanos. Aunque acepta la graficación de datos en punto flotante no se recomienda su utilización para este fin. Los canales se pueden utilizar en forma independiente, no existe ninguna restricción. En algunos casos convendrá utilizar un sólo canal o combinación entre canales.

Page 38: Manual Usuario

38

Ejemplo de utilización del SCOPE. A continuación se presenta un programa realizado en Basic PROTON® para graficar en el canal C0 del SCOPE. Este programa se encuentra en el CD entregado a usted junto al iPROG18, bajo el nombre de: SCOPE_01.bas ' -------------------------------------------------------------------------- ' Programa: SCOPE_01 ' Visualización de datos Enteros a través del canal "C0" del SCOPE ......... ' Para seleccionar la velocidad de conexión entre el PIC y el PC, se utili_ ' zarán las constantes: (84) para 9600 BAUD y (32) para 19200 BAUD como ar_ ' gumento de la función "SerOut". El pin de conexión entre el PIC y el ' computador (PC) será siempre PortB.7. Séptimo bit del puerto B. ' -------------------------------------------------------------------------- Device = 16F877 ' Microcontrolador Utilizado XTAL 20 ' Velocidad del Reloj (resonador) Dim i As Word ' Variable auxiliar DelayMS 1000 ' Retardo inicial requerido por el ' SCOPE, es obligatorio su uso. Main: ' For i=0 To 999 SerOut PORTB.7,32,["C0", DEC3 i ,13] DelayMS 15 ' Pausa de 15 ms requerida para sincronización Next i GoTo Main La instrucción utilizada en Basic PROTOM® para el envío de la información es:

SerOut PORTB.7,32,["C0", DEC3 i ,13]

Instrucciones similares se encuentran en forma estándar en otros compiladores como el PBASIC®, MBASIC®, MikroBASIC®, CCS® y diferentes compiladores existentes en el mercado. Si usted está trabajando en lenguaje ensamblador, se recomienda realizar la comunicación serial a través del manejo de los registros internos del PIC®. En detalle cada parte de la instrucción se refiere a: SerOut: Instrucción utilizada para iniciar una comunicación serial asíncrona. PORTB.7: Es el “pin” de conexión del PIC®, Puerto B, Pin 7. y es el mismo pin de programación del PIC® pin (PGD). No es necesaria hacer ninguna conexión física entre el microcontrolador y el iPROG18, si ya usted está conectado al programador iPROG. 32 : Para el compilador Basic PROTON indica una velocidad de conexión a 19200 BAUD. En general esta constante se puede calcular de la siguiente forma: Valor Ctte = (1000000/Vel. BAUD) – 20. Así, si deseamos obtener diferentes velocidades de conexión entre 4800 BAUD y 40000 BAUD podemos usar los valores encontrados en la siguiente tabla:

Velocidad en BAUD Ctte. Requerida. 4800 188 9600 84 14400 49

19200 * 32 38400 6

* La mayor velocidad de conexión disponible = 40000 BAUD, sin embargo, a fin de obtener los mejores resultados, es recomendable utilizar velocidades cercanas a 19200 BAUD.

Page 39: Manual Usuario

39

"C0": Es el tipo de canal utilizado. “C0” corresponde al canal cero (0), “C1” correspon_ de al canal uno (1), y “C2” corresponde al canal dos (2).

DEC3 i : Variable a graficar junto a su modificador de formato, DEC3 significa que se enviará al PC desde el microcontrolador tres dígitos de la variable i. Se pueden utilizar cualquier modificador de formato numérico aceptado por el compilador. 13 : Carácter de control requerido por el iPROG, al final de los datos. RESUMEN DE PASOS A SEGUIR PARA UNA CORRECTA VISUALIZACIÓN

DE DATOS A TRAVÉS DE LA PANTALLA SCOPE.

1. Utilizar una velocidad de conexión de 19200 BAUD. En forma serial asincrónica con el formato 8N1.

2. Colocar una pausa o retardo de tiempo de mínimo 15 ms entre comandos SerOut.

3. Colocar una pausa o retardo inicial al programa principal de al menos 1000 ms.

' -------------------------------------------------------------------------- ' Programa: SCOPE_01 ' Visualización de datos Enteros a través del canal "C0" del SCOPE ......... ' Para seleccionar la velocidad de conexión entre el PIC y el PC, se utili_ ' zarán las constantes: (84) para 9600 BAUD y (32) para 19200 BAUD como ar_ ' gumento de la función "SerOut". El pin de conexión entre el PIC y el ' computador (PC) será siempre PortB.7. Séptimo bit del puerto B. ' -------------------------------------------------------------------------- Device = 16F877 ' Microcontrolador Utilizado XTAL 20 ' Velocidad del Reloj (resonador) Dim i As Word ' Variable auxiliar DelayMS 1000 ' Retardo inicial requerido por el ' SCOPE, es obligatorio su uso. Main: ' For i=0 To 999 SerOut PORTB.7,32,["C0", DEC3 i ,13] DelayMS 15 ' Pausa de 15 ms requerida para sincronización Next i GoTo Main Barra de Herramientas: La pantalla SCOPE incluye en su parte superior una barra de herramientas muy completa, la cual, le permitirá entre otras cosas hacer acercamientos de imágenes, corrimiento de ejes, zoom de zonas específicas, utilización de cursor, grabación de la imagen a un archivo en disco e imprimirla. Se recomienda imprimir la imagen siempre que el fondo de la misma previamente se haya colocado en color blanco. La barra incluye auto información, la cual, se despliega al colocar el ratón encima de los íconos mostrados.

Page 40: Manual Usuario

40

UTILIZANDO SCOPE PARA GRAFICAR DATOS EN PUNTO FLOTANTE

Cuando se requiere visualizar datos en punto flotante a través de SCOPE, hay que tomar en cuenta las siguientes consideraciones.

1. Verificar que el sistema operativo del PC está correctamente configurado con respecto al manejo del punto decimal y separador de miles. Esto lo puede verificar a través del menú ”Configuración Regional” desde el panel de control del PC, como se muestra en la siguiente figura:

2. Utilizando los modificadores de formato para variables, enviar los datos en punto flotante preferiblemente con sólo dos decimales. Por ejemplo: si se desea visualizar la variable dato = 3.1415 se puede enviar al SCOPE DEC2 Dato, lo que será igual a enviar Dato = 3.14 esto consumirá menor tiempo de transmisión y hará más efectiva la recepción de los bytes de datos por parte del PC.

3. Utilizar las mismas consideraciones mencionadas en el “RESUMEN DE PASOS A

SEGUIR PARA UNA CORRECTA VISUALIZACIÓN DE DATOS A TRAVÉS DE LA PANTALLA SCOPE” cuando se utiliza el SCOPE con números enteros.

Ejemplo de Aplicación. Programa SCOPE_04.bas ' ----------------------------------------------------------------------- ' Programa: SCOPE_04 ' Visualización de datos en punto flotante a través de canales "C0", C1" ' Para seleccionar la vel. de conexión entre el PIC y el PC, se utili_ ' zará la constante: (32) para 19200 BAUD. Device = 16F877 ' Micro Utilizado XTAL 20 ' Velocidad del Reloj Dim i As Float Dim j As Float i = 0 j = 0

Page 41: Manual Usuario

41

Main: SerOut PORTB.7,32,["C0", DEC2 i,13] DelayMS 15 SerOut PORTB.7,32,["C1", DEC2 j,13] DelayMS 15 If i >= 10 Then i = 0 j = 0 EndIf i = i + 0.10 j = ((Random)/10000.0 / 2.5) j = j + 20.0 GoTo Main Corrida del programa utilizando SCOPE.

Definitivamente se observa que cuando el SCOPE grafica números en punto flotante es mucho más lento que cuando lo realiza con números enteros. Esto es debido a que los números en punto flotante necesitan mucho más filtrado y manipulación que los números enteros.

Page 42: Manual Usuario

42

III BBBAAASSSEEE___000111

La base adaptadora Múltiple (iBASE-01) permite al usuario programar los microcontroladores PIC® sin necesidad de utilizar un protoboard. El usuario simplemente inserta el microcontrolador en su base correspondiente, conecta la base adaptadora al programador iPROG18 y programa el microcontrolador, tan fácil como 1,2 y3. Hay que tener especial cuidado de insertar al microcontrolador en la base correspondiente y no otra, para de esta forma asegurar, la correcta programación del mismo. En la siguiente figura se muestra una fotografía de la iBASE-01, en la cual podemos observar:

(1) Base de conexión al programador iPROG18. 6 Pines 0.1” RA.

(2) Base de programación para memorias de la serie 24LCxxx. Base 0.3” 8-DIP.

(3) Base de programación para PIC10Fxxx. Base 0.3” 8-DIP.

(4) Base de programación para PIC12Fxxx (8 Pines), PIC16Fxxx (14 Pines) y PIC16Fxxx (20 Pines). Es la misma base para PIC® de 8,14 y 20 Pines de conexión. El pin No. 1 de la base corresponde al pin No. 1 de los microcontroladores sin importar si tienen 8, 14 ó 20 pines. Base 0.3” 20-DIP.

(5) Base de programación para PIC16/18F (18 Pines).

Base 0.3” 18-DIP.

(6) Base de programación para PIC16/18F (28 Pines). Base 0.3” 28-DIP.

(7) Base de programación para PIC16/18F (40 Pines). Base 0.6” 40-DIP.

CCC AAA PPP III TTT UUU LLL OOO

7

2

3

4

5

6

7

1

4

5