Arduino Nano

De WikiRobotics
Saltar a: navegación, buscar
Arduino Nano

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)
Figura 1: El entorno Arduino recién ejecutado (click para ampliar)
Figura 2: Seleccionando el Arduino nano (click para ampliar)
Figura 3: Ejemplo Blink.pde cargado (click para ampliar)
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
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

Para obtener la última versión teclear:

svn co http://svn.iearobotics.com/skywars/trunk

Enlaces

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