Documente Academic
Documente Profesional
Documente Cultură
Desarrollo de Microcontroladores
Qué es
ARDuINO
KIt De tRAbAjO y eNtORNO De DesARROllO
Arduino es una herramienta para hacer que las computadoras puedan “sentir y controlar
el mundo físico” en base a órdenes muy fáciles de establecer. Es una plataforma de desa-
rrollo de computación física (physical computing) de código abierto, basada en una placa
sencilla con un microcontrolador y un entorno de desarrollo (software Arduino) para crear
programas que serán grabados en el microcontrolador de la placa. Puede usar Arduino
para crear objetos interactivos, leyendo datos de una gran variedad de interruptores y sen-
sores y controlar multitud de tipos de luces, motores y otros actuadores físicos. Los pro-
yectos de Arduino pueden ser autónomos o comunicarse con un programa (software) que
se ejecute en una computadora personal y hasta en un smarphone. La placa puede mon-
tarla Ud. mismo o comprarla ya lista para usar y el software de desarrollo es abierto y lo
puede descargar gratis desde Internet. En esta entrega explica qué es Arduino, cuáles son
los primeros pasos que el lector debe dar para trabajar con esta plataforma, cómo es el kit
básico de desarrollo y explicaremos cómo se emplea el software Arduino, cuya página ofi-
cial es http://www.arduino.cc/es y entendiendo que los textos están licenciados bajo
“Creative Commons Attribution-ShareAlike 3.0 License” y que el código fuente de los
ejemplos en la guía están liberados como dominio público.
Microcontroladores 33
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 34
A rDuino
34 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 35
Microcontroladores 35
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 36
A rDuino
En el CD que se sugiere
descargar, se encuentran
los programas para
Windows, Macintosh y
Linux. Más arriba se indica
cómo descargarlo desde la
web
ConECtE lA PlACA
36 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 37
Microcontroladores 37
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 38
A rDuino
38 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 39
En su computadora
aparecerá una imagen
como la mostrada en la
figura 9.
SElECCIonE Su PlACA
Necesitará seleccio-
nar el tipo de placa de su
Arduino en el menú:
Tools → Board
En la figura 10 puede
ver la imagen que se
despliega, en la que
debe realizar la selec-
ción. Para las nuevas
placas Arduino con el
chip ATmega 328 (com-
pruebe el texto escrito en
el chip de la placa),
seleccione la opción
“Arduino Duemilanove or
Figura 10 - Selección de la placa Arduino en el IDE.
Nano w/ ATmega328” del
menú desplegable.
Anteriormente las placas
Arduino incluían un chip
ATmega 168; para estos
casos seleccione la
opción “Arduino
Diecimila, Duemilanove,
or Nano w/ ATmega168”.
SElECCIonE El
PuErto SErIE
Seleccione el disposi-
tivo serie de la placa
Arduino en el menú:
En la figura 11 puede
ver la imagen que se
despliega, en la que
debe realizar la selec-
ción. Lo más probable es
que sea COM3 o mayor
Figura 11 - Selección del puerto en el que está conectada la placa. (COM1 y COM2 se
Microcontroladores 39
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 40
A rDuino
reservan, por regla general para puertos serie de * La sección “reference” para conocer el len-
hardware). Para asegurarse cuál es, puede des- guaje de programación Arduino.
conectar la placa y volver a mirar el menú; el
puerto de la placa habrá desaparecido de la lista.
Reconecte la placa y seleccione el puerto apro- CArACtEríStICAS téCnICAS dE un ArduIno uno
piado que se indica en el Administrador de
Dispositivos. Arduino UNO es la versión más conocida de
la placa de entrenamiento, existen dos variantes,
la Arduino UNO convencional, figura 13 y la
SubA El SkEtCH A lA PlACA Arduino UNO SMD, figura 14. La única diferencia
entre ambas es el tipo de microcontrolador que
Cuando abrió el archivo de ejemplo, lo que montan. La primera es un microcontrolador
aparece en la pantalla es el programa que al ser Atmega en formato DIP y la segunda dispone de
cargado en el microcontrolador de su placa un microcontrolador en formato SMD. Para
Arduino, hará parpadear un LED. Para “subir el entendernos, el formato DIP es mucho más gran-
sketch” (programa escrito en el IDE de Arduino) de que el formato SMD, que se suelda a la super-
ahora simplemente pulse sobre el botón "Upload" ficie de la placa.
en el Menú del Entorno Arduino, figura 12. En este tutorial haremos uso de la primera
Espere unos pocos segundos (debería ver par- versión porque nos permite programar el chip
padear los Led RX y TX de la placa). sobre la propia placa y después poder quitarlo
Si el volcado del código es exitoso verá apa- para integrarlo en otro proyecto.
recer el mensaje "Done uploading" en la barra de Si su intención es usar directamente la propia
estado. placa en sus prototipos, cualquiera de las dos
versiones es similar.
Nota: Si tiene una placa Arduino Mini, NG, u
otras placas, necesitará presionar el botón de
reseteo de la placa inmediatamente antes de pre- rESuMEn dE CArACtEríStICAS téCnICAS
sionar el botón "Upload" del Entorno de
Programación Arduino. Como mencionamos, el Arduino 1 usa un
microcontrolador ATMEL Atmega328, de 28 ter-
Unos pocos segundos después de finalizar el minales que opera con una tensión de 5V. En la
volcado del programa debería ver cómo el Led de
la placa conectado al pin 13 (L) comienza a par-
padear con un color naranja. Si ocurre esto ¡en
hora buena!
40 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 41
Microcontroladores 41
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 42
A rDuino
42 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 43
el voltaje presente en el
jack directamente
desde Vin. En el caso
de que el Arduino esté
siendo alimentado
mediante el cable USB,
ese voltaje no podrá ser
monitoreado desde
aquí.
En la figura 15 se puede
apreciar la familia de
Arduino, con las varian-
tes propuestas y que se
ofrecen comercialmen-
te. Como dijimos, la
más popular es Arduino
Uno, que en sus tres
tipos se puede ver en la
figura 16.
Microcontroladores 43
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 44
A rDuino
44 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 45
PráCtICA 1:
EnCEndIdo dE un lEd
Microcontroladores 45
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 46
A rDuino
El Programa:
Recuerde, lo que se escribe entre las Figura 25 - Entradas y salidas de la placa Arduino.
llaves de la función setup se ejecuta una
única vez en el arranque de la placa. Lo
que coloquemos entre las llaves de la función
loop se ejecutará una vez tras otra hasta que
apaguemos el Arduino.
Se estará preguntando ¿qué cosas pongo
ahí? … pues… veamos:
1) ¡Cuidado! el pin que quiero configurar y la digitalWrite(número de pin, estado alto o estado bajo)
configuración que quiero que se le aplique están
separados por una coma “,” ¡No se olvides de A estas alturas, ya tiene que haberse percata-
ella! do de que esto tiene que ver con señales digita-
2)¡El punto y coma del final “;” también es les. Como sabe, las señales digitales binarias
importante. representan dos estados: un estado bajo, tam-
3) Más importante aún, cuando programe un bién conocido como 0, apagado u OFF y un esta-
46 Microcontroladores
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 47
do alto también conocido como 1, encendido u Por ahora, con esto es suficiente ¿ahora qué
ON. También sabrá que el estado alto o HIGH se hacemos?
representa con 5V (aunque las placas que se ali- Es bien sencillo. Escribimos las instrucciones
mentan a 3.3V devolverán esto como valor alto) y mencionadas en el escritorio del software Arduino
que el estado bajo o LOW se representa con 0V. una debajo de la otra. Hecho esto, por un lado
DigitalWrite necesita dos parámetros para su pulsaremos sobre el botón que tiene el símbolo
programación o definición, el primero, una vez de play, minicadena o reproductor multimedia de
más, es el número de pin digital al que haremos la barra de botones.
referencia y el siguiente es el estado que quere- Al hacer clic sobre ese botón el sketch escrito
mos mantener en ese pin, por lo tanto. se compilará (se transformará a un lenguaje que
Si quiero enviar un valor alto en el pin 12 ten- “entiende” el microcontrolador). Si hubiera cual-
dré que escribir: quier error, nos aparecerá un texto en rojo en la
parte baja de la ventana, en la sección de men-
digitalWrite(12, HIGH); sajes. Si todo ha ido bien, podemos “subir” el pro-
grama a la placa.
Si quiero tener 0V en el pin 10 escribiré: Lo que haremos es enviar, a través del cable
USB, el programa traducido a la placa y lo graba-
digitalWrite(10, LOW); rá en el chip del microcontrolador.
Este proceso es realmente simple, sólo hay
Otra instrucción que necesitamos es: que hacer clic en el botón de programación.
Sobre la placa hay dos pequeños LEDS, eti-
delay(milisegundos) quetados con los nombres, TX y RX que deberí-
an comenzar a parpadear, indicando que el pro-
Delay es una función más sencillita que el grama está siendo transferido. Luego, el Led que
resto, hace que toda la ejecución de Arduino pare conectamos a la placa debe comenzar a parpa-
durante los milisegundos que le indiquemos dear.
como argumento. Por lo tanto, si quiero esperar
medio segundo escribiré:
ACtIvIdAdES:
delay(500);
1. Haga el mismo montaje anterior pero utili-
Si quiero esperar diez segundos escribiré: zando el pin 7 para conectar el diodo LED.
2. Con el montaje anterior haga que el diodo
delay(10000); esté encendido 1 segundo y apagado 2 segun-
dos.
3. Intente ahora hacer que dos LEDs se apa-
guen y parpadeen de manera secuencial, al esti-
lo del conocido “auto fantástico”.
PráCtICA 2:
EnCEndIdo dEl lEd l IntEgrAdo En lA PlACA
Microcontroladores 47
Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 48
A rDuino
48 Microcontroladores