Manual Atmel FLIP

25
Programando con Atmel FLIP Manual de usuario para programar microcontroladores AVR con interfaz USB

Transcript of Manual Atmel FLIP

Page 1: Manual Atmel FLIP

Programando con Atmel FLIP

Manual de usuario para programar microcontroladores AVR

con interfaz USB

Page 2: Manual Atmel FLIP

Manual de Atmel FLIP

Este documento se encuentra protegido por una licencia Creative Commons

Creative Commons: Atribution, Non-commercial, Share Alike

Atribución:Puede copiar, distribuir y/o transmitir este trabajo siempre y cuando reconozca el autor original del mismo, en este caso Naxus Sistemas Inteligentes.

No Comercial:No puede utilizar este trabajo para propósitos comerciales.

Comparta igual:Si realiza alguna modificación, alteración o construcción a partir de este trabajo, puede distribuirlo únicamente usando la misma licencia o una similar.

Naxus Sistemas InteligentesCra. 84A # 5 - 12Cali, Colombia

[email protected]

Revisión 1.1Marzo 2011

Revisión 1.1 Página 2

Page 3: Manual Atmel FLIP

Manual de Atmel FLIP

Índice de contenido1.INTRODUCCIÓN......................................................................................42.INSTALACIÓN DE FLIP..............................................................................53.INSTALACIÓN DEL DRIVER PARA DISPOSITIVOS USB...................................94.UTILIZANDO FLIP..................................................................................15

4.1. Interfaz del programa......................................................................154.1.1. Barra de herramientas ..............................................................164.1.2. Barra de estado........................................................................174.1.3. Barra de comunicación...............................................................18

4.2. Procedimiento de programación para microcontroladores USB...............184.3. Automatización de comandos............................................................23

Revisión 1.1 Página 3

Page 4: Manual Atmel FLIP

Manual de Atmel FLIP

1. INTRODUCCIÓN

FLIP es un software que facilita Atmel para la programación de microcontroladores de características especiales, que disponen de un bootloader para ser programados. Las interfaces soportadas por FLIP son RS232, CAN y USB. Este manual se enfoca en el uso de FLIP para microcontroladores con interfaz USB, sin embargo es una guía útil en el caso de que se vayan a programar microcontroladores por las otras interfaces mencionadas.

FLIP en su instalación incluye además los drivers USB para microcontroladores que soportan esta interfaz. De esta manera, no es necesario descargar software adicional. El procedimiento de reconocimiento del dispositivo se explica también en este manual.

Finalmente FLIP es usado con varios productos de Naxus Sistemas Inteligentes. Se usa en la reprogramación de NXProg (actualizaciones y cambios de firmware), así como para la programación de USBee, nuestra mini-tarjeta de desarrollo con USB 2.0.

Revisión 1.1 Página 4

Page 5: Manual Atmel FLIP

Manual de Atmel FLIP

2. INSTALACIÓN DE FLIP

El primer paso para utilizar FLIP es instalarlo en su computador. La instalación en Windows es muy sencilla, sólo requiere seguir los pasos indicados por el programa de instalación. El programa FLIP lo puede descargar desde la página de Atmel: http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886. A continuación se realiza un breve resumen de estos pasos.

Recién se ejecuta el programa de instalación aparece una pantalla de bienvenida. Dé clic en Siguiente (Next).

Figura 1: Pantalla de bienvenida del instalador de FLIP

Aparece una ventana que especifica la licencia del software. Debe aceptar la licencia del programa para poder instalarlo. Chequée la casilla de aceptación de la licencia y dé clic en Siguiente (Next).

Revisión 1.1 Página 5

Page 6: Manual Atmel FLIP

Manual de Atmel FLIP

Figura 2: Licencia de FLIP

Posteriormente se le pedirá que elija la ruta donde desea instalar FLIP. Puede tomar la ruta por defecto que ofrece el instalador o especificar la ruta que prefiera.

Figura 3: Directorio de instalación

Revisión 1.1 Página 6

Page 7: Manual Atmel FLIP

Manual de Atmel FLIP

A continuación el programa le pregunta si desea darle un nombre diferente al submenú de FLIP del menú Inicio. Realice los cambios que desee.

Figura 4: Menú de inicio para FLIP

El programa comenzará entonces a realizar la instalación del software. Espere a que termine completamente y dé clic en Siguiente.

Figura 5: Instalación de archivos de FLIP

Revisión 1.1 Página 7

Page 8: Manual Atmel FLIP

Manual de Atmel FLIP

Finalmente el programa le pide si quiere un acceso directo a FLIP en el Escritorio. Marque la casilla correspondiente si así lo desea, y dé clic en Finalizar (Finish).

Figura 6: Finalización del instalador de FLIP

Con estos pasos se tiene FLIP correctamente instalado en su sistema operativo.

Revisión 1.1 Página 8

Page 9: Manual Atmel FLIP

Manual de Atmel FLIP

3. INSTALACIÓN DEL DRIVER PARA DISPOSITIVOS USBCon FLIP ya instalado se puede proceder a configurar el driver para microcontroladores con interfaz USB. A continuación se incluye una lista de los dispositivos más comunes con esta interfaz, que pueden ser utilizados con FLIP:

• AT90USB82• AT90USB162• AT90USB646• AT90USB647• AT90USB1286• AT90USB1287• ATMEGA8U2• ATMEGA16U2• ATMEGA16U4• ATMEGA32U2• ATMEGA32U4• ATMEGA32U6

Estos microcontroladores poseen un mecanismo para entrar al bootloader al momento de realizar un Hard Reset, y consiste en mantener el pin HWB en estado bajo mientras se ejecuta el Reset. Este modo se le denomina en adelante Modo BOOT en este manual. Para mayor información, recomendamos referirse a la hoja de datos específica del microcontrolador.

FLIP incluye un driver genérico para todos estos microcontroladores AVR. Conecte el dispositivo a través de la interfaz USB e ingrese en Modo BOOT. Debe aparecer el mensaje de nuevo hardware encontrado, como se ilustra en la figura 7.

Figura 7: Nuevo hardware encontrado

Asimismo se debe abrir la ventana del Asistente para hardware nuevo encontrado. Éste le pregunta si desea buscar el driver en las bases de datos de Windows Update. Seleccione la opción No por el momento y haga clic en Siguiente.

Revisión 1.1 Página 9

Page 10: Manual Atmel FLIP

Manual de Atmel FLIP

Figura 8: Pantalla inicial del asistente de configuración

Posteriormente el asistente le pregunta si desea instalar automáticamente el driver o desea indicarle donde se encuentra el driver en una posición específica. Seleccione esta última opción, ya que el driver se encuentra en la carpeta donde instaló FLIP.

Revisión 1.1 Página 10

Page 11: Manual Atmel FLIP

Manual de Atmel FLIP

Figura 9: Tipo de búsqueda del driver

Se muestra una nueva ventana en donde se le pide que defina la ubicación del driver. Para ello, utilice el botón Examinar y seleccione la ruta <carpeta FLIP>/usb.

Figura 10: Localización del driver

Revisión 1.1 Página 11

Page 12: Manual Atmel FLIP

Manual de Atmel FLIP

Esta ruta corresponde a la que utilizó para instalar FLIP previamente. Dé clic en Siguiente y observará que comienza el proceso de instalación del dispositivo.

Figura 11: Localización del driver

Figura 12: Instalación del dispositivo

Revisión 1.1 Página 12

Page 13: Manual Atmel FLIP

Manual de Atmel FLIP

Cuando el asistente ha finalizado, le muestra la pantalla que define cuál microcontrolador ha sido encontrado. En el ejemplo aquí mostrado se ha reconocido el microcontrolador AT90USB162.

Figura 13: Finalización del asistente

Finalmente se puede observar el mensaje del sistema operativo, indicando que ha reconocido el dispositivo.

Figura 14: Mensaje del sistema operativo

Asimismo puede verificar directamente en el Panel de Control, y observará que aparece un nuevo menú, denominado Atmel USB Devices, y bajo éste se encuentra el dispositivo reconocido. Nuevamente, en este ejemplo se observa que se ha reconocido el microcontrolador AT90USB162.

Revisión 1.1 Página 13

Page 14: Manual Atmel FLIP

Manual de Atmel FLIP

Figura 15: Microcontrolador USB reconocido en el Administrador de Dispositivos de Windows

De esta manera el microcontrolador AVR USB ha sido reconocido por Windows y puede ser usada en conjunto con FLIP. Recuerde siempre que cuando conecte el microcontrolador, debe ingresar en Modo BOOT para que Windows reconozca el dispositivo (consulte la hoja de datos del microcontrolador de su interés). Sólo conectar el microcontrolador al puerto USB no hace que éste sea reconocido por el sistema operativo.

Revisión 1.1 Página 14

Page 15: Manual Atmel FLIP

Manual de Atmel FLIP

4. UTILIZANDO FLIPEl primer paso es proceder a ejecutar el programa. Para esto, diríjase al botón de Inicio de Windows, seleccione el menú FLIP 3.4.x (la x depende de la versión que se ha instalado), y haga clic en la herramienta Flip.

Figura 16: Ejecución de FLIP

4.1. Interfaz del programa

Se abre entonces la ventana del programa, cuya interfaz se muestra en la siguiente imagen.

Las partes más relevantes de la interfaz se han señalado en lila. Corresponden a la cadena de operaciones (Operations Flow), que permite la automatización del proceso de programación, la sección de información del buffer de memoria FLASH o de EEPROM, que entrega información valiosa sobre el archivo HEX cargado en el buffer del programa, y la información del microcontrolador, que muestra la firma (signature) del microcontrolador, así como la versión de bootloader que tiene preprogramado.

Revisión 1.1 Página 15

Informacióndel buffer

de memoriaFLASH yEEPROM

Informacióndel micro-controlador

USB

Cadenade

operaciones

Barra de herramientas

Barra deconexión

Barra de estado

Page 16: Manual Atmel FLIP

Manual de Atmel FLIP

Se han resaltado tres secciones muy importantes de la ventana: la barra de herramientas, que nos permite acceder a cada una de las opciones que FLIP facilita; la barra de estado, que muestra el resultado de cada una de las operaciones realizadas desde la interfaz, y finalmente la barra de comunicación, que muestra si el microcontrolador se encuentra efectivamente conectado al PC para proceder con las programación del mismo.

4.1.1. Barra de herramientas

Figura 17: Barra de herramientas de FLIP

ICONO DESCRIPCIÓN

Dispositivo: Permite seleccionar el microcontrolador que se intenta programar. Al pulsarlo se abre una ventana que incluye una lista con los microcontroladores soportados.

Comunicación: Permite establecer la comunicación entre el microcontrolador y el PC, ya sea USB, CAN, RS232 o LPC.

Borrar memoria: Permite borrar la memoria FLASH del dipositivo.

Verificación de memoria en blanco: Normalmente se utiliza luego de una acción de borrado de la memoria para verificar que este procedimiento fue correctamente realizado.

Programación de memoria: Programa la memoria FLASH o EEPROM del dispositivo utilizando el archivo .HEX seleccionado con el botón "Cargar archivo .HEX".

Verificación de memoria: Permite comparar la memoria FLASH del dispositivo con el buffer del programa que representa un archivo .HEX previamente cargado.

Lectura de memoria: Permite leer la memoria FLASH del dispositivo y almacenarla en el buffer del programa, para posteriormente guardarla en un archivo .HEX.

Revisión 1.1 Página 16

Page 17: Manual Atmel FLIP

Manual de Atmel FLIP

Editar buffer: Permite editar, byte a byte, el buffer del programa.

Cargar archivo HEX: Permite seleccionar un archivo .HEX para ser cargado en el buffer del programa. Si está seleccionando un archivo HEX para la EEPROM, éstos por lo general son de extensión .EEP.

Guardar buffer como archivo HEX: Permite guardar el buffer del programa en un archivo .HEX.

Ayuda: Despliega una ventana de ayuda para el manejo del programa FLIP.

4.1.2. Barra de estado

La barra de estado le permite al usuario conocer el resultado de la ejecución de comandos realizados con FLIP. A continuación se muestra una tabla que ilustra parte de los mensajes que muestra la barra de estado.

MENSAJE DESCRIPCIÓN

Mensaje que aparece cuando se ha realizado un borrado de memoria FLASH del dispositivo y la operación ha sido ejecutada correctamente.

Mensaje que aparece cuando se ha realizado un chequeo de la memoria flash en blanco y el chequeo ha sido positivo.

Mensaje que aparece cuando se ha realizado la programación de la memoria FLASH del dispositivo y todo ha salido correctamente.

Mensaje que aparece cuando se ha ejecutado una verificación de la memoria FLASH del dispositivo con la del buffer del programa, y la verificación ha sido exitosa.

Mensaje que aparece cuando se ha cargado correctamente un archivo .HEX en el buffer del

Revisión 1.1 Página 17

Page 18: Manual Atmel FLIP

Manual de Atmel FLIP

programa.

Mensaje de error que aparece cuando FLIP no ha podido leer correctamente el dispositivo. Generalmente se debe a una mala conexión del mismo.

Mensaje de error que aparece cuando FLIP ha encontrado diferencias entre la memoria FLASH y la memoria del buffer. Esto sucede cuando se ejecuta el comando de verificación de memoria.

4.1.3. Barra de comunicación

La barra de comunicación permite establecer si el dispositivo ha sido correctamente reconocido por el programa, y se puede proceder a ejecutar comandos de FLIP para programar el dispositivo. A continuación se muestra una tabla que refleja los mensajes más comunes que aparecen en esta barra.

MENSAJE DESCRIPCIÓN

Este mensaje aparece cuando no se ha detectado ningún dispositivo conectado al computador.

Este mensaje se muestra cuando se ha logrado una comunicación exitosa con el dispositivo a través del puerto USB.

4.1.4. Selección de FLASH o EEPROM

Es posible seleccionar entre programar la memoria FLASH o la EEPROM del dispositivo, gracias a un botón que se encuentra en la sección Información del buffer de memoria.

MENSAJE BOTÓN DESCRIPCIÓN

Si el botón contiene este mensaje, FLIP está preparado para programar la memoria FLASH. Púlselo en caso de que quiera programar la EEPROM.

Si el botón contiene este mensaje, FLIP está preparado para programar la memoria EEPROM. Púlselo en caso de que quiera programar la FLASH.

Revisión 1.1 Página 18

Page 19: Manual Atmel FLIP

Manual de Atmel FLIP

4.2. Procedimiento de programación para microcontroladores USB

Con la interfaz FLIP ya descrita, se puede proceder a utilizar este software para programar los microcontroladores soportados. La secuencia de pasos aquí descrita no es obligatoria aunque sí recomendada; puede omitir por ejemplo los pasos de verificación sin que esto afecte el proceso.

1. Microcontrolador USB en Modo Boot: Este paso es indispensable para que FLIP pueda reconocer correctamente el dispositivo. Conecte el microcontrolador e ingrese en modo Boot. Si es necesario, reinstale el driver según las especificaciones dadas anteriormente. Cada vez que se utiliza un puerto USB diferente para conectar el dispositivo, Windows lo reconoce como un dispositivo nuevo y debe aplicar el procedimiento de instalación del driver.

2. Conexión entre FLIP y el dispositivo: Si el microcontrolador ha sido correctamente reconocido, proceda a abrir FLIP y seleccione el dispositivo que se encuentre utilizando, usando el botón Dispositivo de la barra de herramientas, como se muestra en la siguiente figura, tomando como ejemplo el microcontrolador AT90USB162.

Figura 18: Selección del microcontrolador de USBee

Revisión 1.1 Página 19

Page 20: Manual Atmel FLIP

Manual de Atmel FLIP

Luego de seleccionado el microcontrolador, proceda a pulsar el botón de comunicación , y seleccione USB. Se abrirá una ventana nueva, pulse el

botón Abrir (Open). Si el procedimiento ha sido exitoso, en la barra de comunicación debe aparecer el mensaje y la barra de herramientas

debe haberse activado. Las siguientes tres figuras ilustran este proceso.

Figura 19: Selección de comunicación por USB

Revisión 1.1 Página 20

Page 21: Manual Atmel FLIP

Manual de Atmel FLIP

Figura 20: Abrir puerto USB

Figura 21: Barra de herramientas activada y barra de comunicación USB ON

Revisión 1.1 Página 21

Page 22: Manual Atmel FLIP

Manual de Atmel FLIP

En caso de que ocurra algún error en la comunicación, FLIP avisará al usuario mostrando la ventana de la siguiente figura.

Figura 22: Mensaje de error cuando no es posible la comunicación con USBee

Generalmente se debe a que el dispositivo USB no ha sido correctamente reconocido por el sistema. Verifique primero que el microcontrolador se encuentre en Modo Boot, repitiendo el procedimiento para ingresar a este estado, y verifique que el driver se encuentre correctamente instalado. Asimismo, verifique que el microcontrolador USB aparece en el Administrador de Dispositivos de Windows, como se muestra en la Figura 15.

3. Selección de memoria a programar: Antes de proceder con otra tarea, establezca cuál memoria del dispositivo va a programar, si la FLASH o la EEPROM. Esto lo puede definir utilizando los botones para programar la FLASH, o para programar la EEPROM.

4. Borrado de memoria del microcontrolador: Para programar la FLASH del dispositivo es indispensable ejecutar previamente el comando de borrado. Utilice los botones de la barra de herramientas, Borrar memoria

y verificación de memoria en blanco , para tal fin. Si estos

comandos han sido ejecutados exitosamente, aparecen los mensajes

y , respectivamente, en la barra de estado. Si

ha seleccionado programar la memoria EEPROM, este paso no es necesario.

5. Selección del archivo .HEX: Proceda ahora a seleccionar el archivo .HEX que desea programar en la memoria FLASH del microcontrolador, utilizando

el botón Cargar archivo HEX de la barra de herramientas. Se despliega una nueva ventana que le permite seleccionar el archivo en cuestión. La siguiente figura ilustra este procedimiento. Si el procedimiento se ha

Revisión 1.1 Página 22

Page 23: Manual Atmel FLIP

Manual de Atmel FLIP

realizado correctamente aparece en la barra de estado el mensaje

que indica que el archivo ha sido copiado al buffer del programa.

Figura 23: Cargar del archivo HEX

Si está trabajando con la memoria EEPROM, localice el archivo de extensión .EEP (también es un archivo de formato hexadecimal, pero con extensión diferente para diferenciarlo del de la Flash), al utilizar el filtro Todos los archivos en el menú "Archivos de tipo:" de la ventana de selección.

6. Programación de memoria FLASH o EEPROM: Finalmente es posible pulsar el botón Programación de memoria de la barra de herramientas,

para programar la FLASH o EEPROM del microcontrolador con el buffer del programa. Si el procedimiento ha sido ejecutado correctamente, aparece el

mensaje en la barra de estado. Proceda a pulsar posteriormente el botón Verificación de Memoria , y si ésta concuerda

con la del buffer, aparece el mensaje en la barra de

estado.

Revisión 1.1 Página 23

Page 24: Manual Atmel FLIP

Manual de Atmel FLIP

7. Ingreso a Modo Aplicación: Con esto queda finalizado el proceso de programación, y solo resta realizar un RESET del dispositivo para que comience a ejecutar el código recién programado.

Si aparece la ventana de la figura 24 en algún momento del proceso, es posible que haya ocurrido una desconexión del dispositivo. Proceda desde el punto 1.

Figura 24: Error de escritura

Revisión 1.1 Página 24

Page 25: Manual Atmel FLIP

Manual de Atmel FLIP

4.3. Automatización de comandos

FLIP permite automatizar la cadena de comandos a utilizar, facilitando las labores de programación. En la sección cadena de operaciones (Operations Flow) de la interfaz de FLIP, seleccione las tareas que le interesa que se ejecuten. Cuando se encuentre listo para realizarlas, presione Ejecutar (Run). FLIP ejecutará secuencialmente estas tareas. Recuerde que no se puede programar el microcontrolador USB sin previamente haber realizado la operación de borrado de memoria.

Figura 25: Cadena de operaciones secuenciales

Revisión 1.1 Página 25