Programando con Atmel FLIP

Anuncio
Programando con Atmel FLIP
Manual de usuario para programar microcontroladores AVR
con interfaz USB
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 Inteligentes
Cra. 84A # 5 - 12
Cali, Colombia
www.naxuscolombia.com
[email protected]
Revisión 1.1
Marzo 2011
Revisión 1.1
Página 2
Manual de Atmel FLIP
Índice de contenido
1.INTRODUCCIÓN......................................................................................4
2.INSTALACIÓN DE FLIP..............................................................................5
3.INSTALACIÓN DEL DRIVER PARA DISPOSITIVOS USB...................................9
4.UTILIZANDO FLIP..................................................................................15
4.1. Interfaz del programa......................................................................15
4.1.1. Barra de herramientas ..............................................................16
4.1.2. Barra de estado........................................................................17
4.1.3. Barra de comunicación...............................................................18
4.2. Procedimiento de programación para microcontroladores USB...............18
4.3. Automatización de comandos............................................................23
Revisión 1.1
Página 3
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
Manual de Atmel FLIP
2. INSTALACIÓN DE FLIP
El primer paso para utilizar FLIP es instalarlo en su computador. La instalación
Windows es muy sencilla, sólo requiere seguir los pasos indicados por
programa de instalación. El programa FLIP lo puede descargar desde la página
Atmel:
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886.
continuación se realiza un breve resumen de estos pasos.
en
el
de
A
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
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
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
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
Manual de Atmel FLIP
3. INSTALACIÓN DEL DRIVER PARA DISPOSITIVOS USB
Con 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
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
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
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
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
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
Manual de Atmel FLIP
4. UTILIZANDO FLIP
El 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.
Barra de
estado
Información
del buffer
Cadena
de
de memoria
operaciones
FLASH y
EEPROM
Información
del microcontrolador
USB
Barra de
herramientas
Barra de
conexión
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
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
microcontrolador y el PC, ya sea USB, CAN, RS232 o LPC.
entre
el
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
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
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
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
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
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
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
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
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
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
Descargar