Diferencia entre revisiones de «Arduino Nano»
De WikiRobotics
(→Probando el hola mundo) |
(→Enlaces) |
||
(No se muestran 19 ediciones intermedias del mismo usuario) | |||
Línea 17: | Línea 17: | ||
=== Instalación === | === Instalación === | ||
(Probado en una Ubuntu 9.04) | (Probado en una Ubuntu 9.04) | ||
− | * Instalar los siguientes paquetes: gcc-avr, avr-libc, binutils-avr | + | * Instalar los siguientes paquetes: gcc-avr, avr-libc, binutils-avr, avrdude |
* Descargar el arduino IDE: [http://www.iearobotics.com/downloads/2010-05-12-arduino-nano/arduino-0018.tgz arduino-0018.tgz] | * Descargar el arduino IDE: [http://www.iearobotics.com/downloads/2010-05-12-arduino-nano/arduino-0018.tgz arduino-0018.tgz] | ||
* Descomprimirlo | * Descomprimirlo | ||
Línea 38: | Línea 38: | ||
| [[Imagen:Arduiono-ide-4.jpg|thumb|300px| '''Figura 4''': Ejemplo Blink.pde descargado en el arduino (click para ampliar)]] | | [[Imagen:Arduiono-ide-4.jpg|thumb|300px| '''Figura 4''': Ejemplo Blink.pde descargado en el arduino (click para ampliar)]] | ||
|} | |} | ||
+ | |||
+ | == Entorno GCC == | ||
+ | |||
+ | === Ejemplo hola mundo === | ||
+ | El programa '''ledon.c''' simplemente enciende el led, que está situado en el PORTB5 | ||
+ | |||
+ | * '''Compilar''': | ||
+ | avr-gcc ledon.c -mmcu=atmega168 -Wall -o ledon.out | ||
+ | |||
+ | * '''Convertir a .hex''': | ||
+ | avr-objcopy -O ihex ledon.out ledon.hex | ||
+ | |||
+ | * '''Descargar en el arduino nano''': | ||
+ | avrdude -q -patmega168 -cstk500v1 -P/dev/ttyUSB0 -b19200 -D -Uflash:w:ledon.hex | ||
+ | |||
+ | La descarga se hace automáticamente. No es necesario apretar el botón de reset. Aparecerá el siguiente mensaje: | ||
+ | |||
+ | avrdude: AVR device initialized and ready to accept instructions | ||
+ | avrdude: Device signature = 0x1e9406 | ||
+ | avrdude: reading input file "ledon.hex" | ||
+ | avrdude: input file ledon.hex auto detected as Intel Hex | ||
+ | avrdude: writing flash (178 bytes): | ||
+ | avrdude: 178 bytes of flash written | ||
+ | avrdude: verifying flash memory against ledon.hex: | ||
+ | avrdude: load data flash data from input file ledon.hex: | ||
+ | avrdude: input file ledon.hex auto detected as Intel Hex | ||
+ | avrdude: input file ledon.hex contains 178 bytes | ||
+ | avrdude: reading on-chip flash data: | ||
+ | avrdude: verifying ... | ||
+ | avrdude: 178 bytes of flash verified<br> | ||
+ | avrdude: safemode: Fuses OK<br> | ||
+ | avrdude done. Thank you | ||
+ | |||
+ | === Grabación del Bootloader === | ||
+ | |||
+ | Para grabar el bootloader desde la línea de comandos, conectar el [[Grabador de AVRs:USBtinyISP v2.0|grabador USBtiny]] al USB y al conector ICSP del arduino nano. Ejecutar el siguiente comando: | ||
+ | |||
+ | $ sudo avrdude -q -patmega168 -cusbtiny -Uflash:w:ATmegaBOOT_168_diecimila.hex:i -Ulock:w:0x0F:m | ||
+ | |||
+ | Aparecerá el siguiente mensaje: | ||
+ | |||
+ | avrdude: AVR device initialized and ready to accept instructions | ||
+ | avrdude: Device signature = 0x1e9406 | ||
+ | avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed | ||
+ | To disable this feature, specify the -D option. | ||
+ | avrdude: erasing chip | ||
+ | avrdude: reading input file "ATmegaBOOT_168_diecimila.hex" | ||
+ | avrdude: writing flash (16294 bytes): | ||
+ | avrdude: 16294 bytes of flash written | ||
+ | avrdude: verifying flash memory against ATmegaBOOT_168_diecimila.hex: | ||
+ | avrdude: load data flash data from input file ATmegaBOOT_168_diecimila.hex: | ||
+ | avrdude: input file ATmegaBOOT_168_diecimila.hex contains 16294 bytes | ||
+ | avrdude: reading on-chip flash data: | ||
+ | avrdude: verifying ... | ||
+ | avrdude: 16294 bytes of flash verified | ||
+ | avrdude: reading input file "0x0F" | ||
+ | avrdude: writing lock (1 bytes): | ||
+ | avrdude: 1 bytes of lock written | ||
+ | avrdude: verifying lock memory against 0x0F: | ||
+ | avrdude: load data lock data from input file 0x0F: | ||
+ | avrdude: input file 0x0F contains 1 bytes | ||
+ | avrdude: reading on-chip lock data: | ||
+ | avrdude: verifying ... | ||
+ | avrdude: 1 bytes of lock verified<br> | ||
+ | avrdude: safemode: Fuses OK<br> | ||
+ | avrdude done. Thank you. | ||
+ | |||
+ | |||
+ | |||
+ | El bootloader se encuentra en el directorio '''hardware/arduino/bootloaders/atmega''' dentro del directorio donde está el entorno de Arduino instalado | ||
+ | |||
+ | === Repositorio === | ||
+ | |||
+ | * Repositorio SVN: [http://svn.iearobotics.com/skywars/ http://svn.iearobotics.com/skywars/] | ||
+ | |||
+ | Para obtener la última versión teclear: | ||
+ | svn co http://svn.iearobotics.com/skywars/trunk | ||
== Enlaces == | == Enlaces == | ||
+ | * [[Grabador de AVRs:USBtinyISP v2.0]] | ||
+ | * '''Documentación''': [http://www.iearobotics.com/downloads/2010-05-12-arduino-nano/atmega-168-datasheet.pdf Hoja de datos del Atmel ATmega 168] | ||
+ | * '''Documentación''': [http://www.nongnu.org/avr-libc/ AVR-libc] | ||
* [http://www.arduino.cc/en/Guide/ArduinoNano Arduino Nano]. Página web oficial | * [http://www.arduino.cc/en/Guide/ArduinoNano Arduino Nano]. Página web oficial | ||
+ | * [http://www.arduino.cc/playground/ http://www.arduino.cc/playground/] | ||
+ | * [http://www.wulfden.org/TheShoppe/freeduino/ADABOOT.shtml Bootloader para micros ATmega] | ||
== Noticias == | == Noticias == | ||
+ | * '''13/Mayo/2010''': | ||
+ | ** Añadida sección de Arduino + Entorno GCC | ||
+ | ** Creado repositorio para los ejemplos del GCC | ||
* '''12/Mayo/2010''': Añadido ejemplo hola mundo para entorno Arduino | * '''12/Mayo/2010''': Añadido ejemplo hola mundo para entorno Arduino | ||
− | * '''11/Dic/2008''': He recibido el Arduino Nano. Lo he comprado en [http://www.libelium.com/ libelium]. Página con [http://www.libelium.com/tienda/catalog/product_info.php?products_id=65 información en Libelium] | + | * '''11/Dic/2008''': He recibido el Arduino Nano ([http://www.iearobotics.com/blog/2008/12/13/mi-nuevo-arduino-nano/ Blog]). Lo he comprado en [http://www.libelium.com/ libelium]. Página con [http://www.libelium.com/tienda/catalog/product_info.php?products_id=65 información en Libelium] |
+ | |||
+ | [[Categoría:ATMEL]] |
Revisión actual del 01:23 27 may 2010
Contenido
Introducción
Arduino Nano con procesador ATMega168
Entorno Arduino
Descarga
arduino-0018.tgz | Arduino IDE. Versión 18 |
Blink.pde | Ejemplo que hace parpadear el led |
Instalación
(Probado en una Ubuntu 9.04)
- Instalar los siguientes paquetes: gcc-avr, avr-libc, binutils-avr, avrdude
- Descargar el arduino IDE: arduino-0018.tgz
- Descomprimirlo
Probando el hola mundo
- Entrar en el directorio donde está instalado el arduino IDE (el directorio por defecto es arduino-0018)
- Conectar el Arduino nano al USB
- Ejecutar ./arduino
- Aparecerá la pantalla mostrada en la figura 1
- Seleccionar el arduino nado (figura 2)
- Descargar el programa de ejemplo Blink.pde y abrir (con File/Open) (figura 3)
- Pulsar en el botón triangular superior (verify) para compilar
- Pulsar en el botón Upload. Comenzará la descarga. Al cabo de unos segundos el led empezará a parpadear (Figura 4)
Entorno GCC
Ejemplo hola mundo
El programa ledon.c simplemente enciende el led, que está situado en el PORTB5
- Compilar:
avr-gcc ledon.c -mmcu=atmega168 -Wall -o ledon.out
- Convertir a .hex:
avr-objcopy -O ihex ledon.out ledon.hex
- Descargar en el arduino nano:
avrdude -q -patmega168 -cstk500v1 -P/dev/ttyUSB0 -b19200 -D -Uflash:w:ledon.hex
La descarga se hace automáticamente. No es necesario apretar el botón de reset. Aparecerá el siguiente mensaje:
avrdude: AVR device initialized and ready to accept instructions avrdude: Device signature = 0x1e9406 avrdude: reading input file "ledon.hex" avrdude: input file ledon.hex auto detected as Intel Hex avrdude: writing flash (178 bytes): avrdude: 178 bytes of flash written avrdude: verifying flash memory against ledon.hex: avrdude: load data flash data from input file ledon.hex: avrdude: input file ledon.hex auto detected as Intel Hex avrdude: input file ledon.hex contains 178 bytes avrdude: reading on-chip flash data: avrdude: verifying ... avrdude: 178 bytes of flash verified
avrdude: safemode: Fuses OK
avrdude done. Thank you
Grabación del Bootloader
Para grabar el bootloader desde la línea de comandos, conectar el grabador USBtiny al USB y al conector ICSP del arduino nano. Ejecutar el siguiente comando:
$ sudo avrdude -q -patmega168 -cusbtiny -Uflash:w:ATmegaBOOT_168_diecimila.hex:i -Ulock:w:0x0F:m
Aparecerá el siguiente mensaje:
avrdude: AVR device initialized and ready to accept instructions avrdude: Device signature = 0x1e9406 avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "ATmegaBOOT_168_diecimila.hex" avrdude: writing flash (16294 bytes): avrdude: 16294 bytes of flash written avrdude: verifying flash memory against ATmegaBOOT_168_diecimila.hex: avrdude: load data flash data from input file ATmegaBOOT_168_diecimila.hex: avrdude: input file ATmegaBOOT_168_diecimila.hex contains 16294 bytes avrdude: reading on-chip flash data: avrdude: verifying ... avrdude: 16294 bytes of flash verified avrdude: reading input file "0x0F" avrdude: writing lock (1 bytes): avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x0F: avrdude: load data lock data from input file 0x0F: avrdude: input file 0x0F contains 1 bytes avrdude: reading on-chip lock data: avrdude: verifying ... avrdude: 1 bytes of lock verified
avrdude: safemode: Fuses OK
avrdude done. Thank you.
El bootloader se encuentra en el directorio hardware/arduino/bootloaders/atmega dentro del directorio donde está el entorno de Arduino instalado
Repositorio
- Repositorio SVN: http://svn.iearobotics.com/skywars/
Para obtener la última versión teclear:
svn co http://svn.iearobotics.com/skywars/trunk
Enlaces
- Grabador de AVRs:USBtinyISP v2.0
- Documentación: Hoja de datos del Atmel ATmega 168
- Documentación: AVR-libc
- Arduino Nano. Página web oficial
- http://www.arduino.cc/playground/
- Bootloader para micros ATmega
Noticias
- 13/Mayo/2010:
- Añadida sección de Arduino + Entorno GCC
- Creado repositorio para los ejemplos del GCC
- 12/Mayo/2010: Añadido ejemplo hola mundo para entorno Arduino
- 11/Dic/2008: He recibido el Arduino Nano (Blog). Lo he comprado en libelium. Página con información en Libelium