Está en la página 1de 7

En la segunda parte de este artculo habamos decidido combinar el uso de AVR

Studio 4 y Arduino. Los pasos que podemos seguir para integrar ambas plataformas
son los siguientes:
1. En
primer
lugar
descargamos
e
instalamos
Arduino
desde
http://arduino.cc/en/Main/Software
2. A continuacin descargamos e instalamos el AVR Studio 4.18 y su Service
Pack
SP2
desde
http://www.atmel.com/dyn/products/tools_card.asp?
tool_id=2725
3. En el AVR Studio creamos un nuevo proyecto usando AVR GCC,
seleccionamos la plataforma de depuracin AVR Simulator y el chip
ATMEGA 328P (el mismo que usa la placa Duemilanove)
4. En el men principal seleccionamos Project-Configuration Options. En
General adicionamos el parmetro de la frecuencia del reloj (Frequency),
16 MHz

Figura 1. Configurando la frecuencia que corresponde con la placa Arduino


Duemilanove.
5. En Include Directories especificamos la ruta a las carpetas de Arduino
(con los puntos suspensivos queremos indicar el resto de la ruta hasta la
carpeta Arduino tal y como la tengas instalada en el ordenador):
.\Arduino\arduino-0018\hardware\tools\avr\lib\
.\Arduino\arduino-0018\hardware\arduino\cores\arduino\

Figura 2. Especificando la rutas a los archivos de cabecera


6. En Custom Options deseleccionamos WinAR y especificamos
las
herramientas
desde
la
carpeta
Arduino
.\Arduino\arduino0018\hardware\tools\avr\bin\avr-gcc.exe
y
.\Arduino\arduino0018\hardware\tools\avr\utils\bin\make.exe. Pinchamos en Aceptar y
cerramos las opciones del proyecto.

Figura 3. Especificando la ruta a las herramientas.


7. A continuacin en la ventana de la izquierda adicionamos debajo de Source
Files,
desde
la
carpeta
.Arduino\arduino0018\hardware\arduino\cores\arduino,
los
archivos
main.c,
pins_arduino.c, wiring_digital.c y wiring.c. Finalmente copiamos nuestro
archivo arduino Blink.pde como Blink.C (la mayscula es importante para
que AVR Studio le permita a gcc discernir si el archivo es c o c++) en la
carpeta del proyecto y le introducimos al principio la sentencia #include

<WProgram.h> (esta sentencia se puede mantener cuando volvamos al


entorno Arduino, bastar con renombrar la extensin del archivo).
8. Procedemos a compilar y simular, pinchando en el icono:
. Y podemos
observar el funcionamiento interno de Arduino y nuestro ejemplo Blink
modificado.

Figura 4. Simulando la funcin main() de Arduino.

Figura 5. Simulando el ejemplo Blink modificado.

9. Una vez que comprobemos que nuestro programa funciona, podemos


grabarlo en la placa Duemilanove desde AVR Studio. Para ello iremos
en el men principal a Tools-Customize-Tools y definiremos un nuevo tem
en dicho men con el nombre Program project:adn cpu:328P (para que
en el futuro no olvidemos qu proyecto, ni qu CPU estamos grabando) que
enlazaremos
con
el
Commando:
.Arduino\arduino0018\hardware\tools\avr\bin\avrdude.exe y los Argumentos -v -v -p m328p
-c avrisp -P com4 -b 57600 -F -U flash:w: adn\default\adn.hex" (procesador
m328p, com4 es el puerto serie que utiliza Arduino y la ruta completa del
archivo .hex). Luego copiaremos el archivo de configuracin desde
.Arduino\arduino-0018\hardware\tools\avr\etc a la carpeta del avrdude.exe
(.Arduino\arduino-0018\hardware\tools\avr\bin). Ahora podemos a pichar
en Tools nuestro nuevo tem Program project:adn cpu:328P y proceder a
la grabacin.

Figura 6. Configurando la grabacin de la placa Duemilanove desde AVR


Studio.

Figura 7. Grabando la placa Duemilanove desde AVR Studio.


Y voil, podemos observar la nueva secuencia de encendido en la placa
Duemilanove! Si queremos volver a Arduino, bastar con renombrar el archivo
como .pde y devolverlo a la carpeta Blink (sobre escribiendo el antiguo). Lo
abrimos cambiamos la temporizacin y lo subimos a la placa.

Figura 7. Recuperando el ejemplo y modificndolo nuevamente desde


Arduino.
Hemos conseguido dos de nuestros objetivos, grabar una placa Duemilanove desde
AVR Studio y combinar este IDE con Arduino. Desde el punto de vista software nos
queda pendiente realizar las interfaces con las bibliotecas de Arduino.
Para demostrar esto, hemos utilizado EEPROM y el ejemplo eeprom_clear.pde. Se
renombraron ambos con la extensin .C (recordemos que la mayscula es
importante para programar en c++ y c desde AVR Studio), se aadieron ambos
al proyecto y en las ruta de los archivos de cabecera se incluy
.\Arduino\arduino-0018\libraries\EEPROM\, finalmente en el cdigo de ejemplo se
incluy estas dos sentencias #include <WProgram.h> y #include
<EEPROM.h>. Compilamos y simulamos en AVR Studio para observar el
funcionamiento del programa. Para devolver el ejemplo a Arduino, basta
simplemente con renombrar la extensin a .pde.
Cmo usar la combinacin de Arduino y AVR Studio para la enseanza de
ingenieros especializados en electrnica? Aunque la respuesta de esta pregunta es
de largo recorrido, en el prximo post, mostraremos nuestro punto de vista y
algunos ejemplos.

Figura 8. Trabajando con las bibliotecas Arduino desde AVR Studio.

Figura 9. Simulando con las bibliotecas Arduino desde AVR Studio.

Figura 10. Recuperando el ejemplo en Arduino.

Referencias
[1] http://survey.avrfreaks.net/index.php?
name=PNphpBB2&file=printview&t=82950&start=0
[2] http://www.smileymicros.com/download/Workshop12/Workshop%2012.pdf
[3] http://www.ladyada.net/library/arduino/bootloader.html

También podría gustarte