Está en la página 1de 16

Manual - Arduino.

qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 33

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 fsico en base a rdenes muy fciles de establecer. Es una plataforma de desarrollo de computacin fsica (physical computing) de cdigo abierto, basada en una placa
sencilla con un microcontrolador y un entorno de desarrollo (software Arduino) para crear
programas que sern grabados en el microcontrolador de la placa. Puede usar Arduino
para crear objetos interactivos, leyendo datos de una gran variedad de interruptores y sensores y controlar multitud de tipos de luces, motores y otros actuadores fsicos. Los proyectos de Arduino pueden ser autnomos o comunicarse con un programa (software) que
se ejecute en una computadora personal y hasta en un smarphone. La placa puede montarla 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, cules son
los primeros pasos que el lector debe dar para trabajar con esta plataforma, cmo es el kit
bsico de desarrollo y explicaremos cmo se emplea el software Arduino, cuya pgina oficial es http://www.arduino.cc/es y entendiendo que los textos estn licenciados bajo
Creative Commons Attribution-ShareAlike 3.0 License y que el cdigo fuente de los
ejemplos en la gua estn liberados como dominio pblico.
Coordinacin: Federico Prado - fprado@webelectronica.com.ar

Microcontroladores

33

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 34

A rDuino
IntroduCCIn
Arduino es una placa con un microcontrolador de la marca Atmel y con toda la circuitera de
soporte, que incluye, reguladores de tensin, un
puerto USB (En los ltimos modelos, aunque el
original utilizaba un puerto serie) conectado a un
mdulo adaptador USB-Serie que permite programar el microcontrolador desde cualquier PC
de manera cmoda y tambin hacer pruebas de
comunicacin con el propio chip.
Un arduino dispone de 14 pines que pueden
configurarse como entrada o salida y a los que
puede conectarse cualquier dispositivo que sea
capaz de transmitir o recibir seales digitales de
0V y 5V.
Tambin dispone de entradas y salidas analgicas. Mediante las entradas analgicas podemos obtener datos de sensores en forma de
variaciones continuas de un voltaje. Las salidas
analgicas suelen utilizarse para enviar seales
de control en forma de seales PWM.
El lenguaje de programacin de Arduino es
una implementacin de Wiring, una plataforma de
computacin fsica parecida, que a su vez se
basa en Processing, un entorno de programacin
multimedia.
Por qu Arduino?
Hay muchos microcontroladores y plataformas con microcontroladores disponibles para la
computacin fsica:
Parallax Basic Stamp, BX-24 de Netmedia,
Phidgets,
Handyboard del MIT,
Picaxe,
etc.
Todos stos ofrecen funcionalidades similares. Organizan el complicado trabajo de programar un microcontrolador en paquetes fciles de
usar. Arduino, adems de simplificar el proceso
de trabajar con microcontroladores, posee algunas ventajas respecto a otros sistemas a profesores, estudiantes y amateurs:
Asequible - Las placas Arduino son ms asequibles comparadas con otras plataformas de
microcontroladores. La versin ms cara de un
mdulo de Arduino puede ser montada a mano, e
incluso ya montada cuesta bastante menos de 90
dlares americanos

34

Microcontroladores

Multi-Plataforma - El software de Arduino


funciona en los sistemas operativos Windows,
Macintosh OSX y Linux. La mayora de los entornos para microcontroladores estn limitados a
Windows.
Entorno de programacin simple y directo
- El entorno de programacin de Arduino es fcil
de usar para principiantes y lo suficientemente
flexible para los usuarios avanzados. Pensando
en los profesores, Arduino est basado en el
entorno de programacin de Procesing con lo
que el estudiante que aprenda a programar en
este entorno se sentir familiarizado con el entorno de desarrollo Arduino.
Software ampliable y de cdigo abierto- El
software Arduino esta publicado bajo una licencia
libre y preparado para ser ampliado por programadores experimentados. El lenguaje puede
ampliarse a travs de libreras de C++, y si se
est interesado en profundizar en los detalles tcnicos, se puede dar el salto a la programacin en
el lenguaje AVR C en el que est basado. De
igual modo se puede aadir directamente cdigo
en AVR C en sus programas si as lo desea.
Hardware ampliable y de Cdigo abierto Arduino est basado en los microcontroladores
ATMEGA168, ATMEGA328 y ATMEGA1280. Los
circuitos de los mdulos estn publicados bajo
licencia Creative Commons, por lo que diseadores de circuitos con experiencia pueden hacer su
propia versin del mdulo, amplindolo u optimizndolo. Incluso usuarios relativamente inexpertos pueden construir la versin para placa de
desarrollo para entender cmo funciona y ahorrar
algo de dinero.

CMo uSo ArduIno?


Los textos de la gua "Como empezar con
Arduino", que se encuentra en la pgina
http://www.arduino.cc/es/ estn licenciados
bajo Creative Commons Attribution-ShareAlike
3.0 License. El cdigo fuente de los ejemplos en
la gua estn liberados como dominio pblico, tal
como ya hemos dicho y como repetiremos varias
veces para que el lector comprenda que todo lo
que haga con Arduino puede implicar una rpida
salida laboral sin tener que pagar licencias o
derechos.

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 35

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

Este documento explica cmo conectar una


placa Arduino a la computadora y volcar el cdigo de un primer programa. Lo que necesita,
entonces, es lo siguiente:

Figura 1 - Arduino Uno

1. Consiga una placa Arduino y un cable USB.


2. Descargue el IDE (software) de Arduino.
3. Conecte la placa a la PC.
4. Instale los drivers del conversor USB a
RS232 que posee la placa.
5. Ejecute la Aplicacin Arduino (el IDE que
descarg).
6. Abra el ejemplo Blink que posee la aplicacin.
7. Seleccione su placa.
8. Selecciona el puerto serie apropiado.
9. Suba el sketch (el programa ejemplo) a la
placa.

ConSIgA un ArduIno y un CAblE uSb

Figura 2 - Cable USB


La idea es que aprenda, se capacite, practique y tenga un buen desempeo.

CoMEnzAndo Con ArduIno En WIndoWS


Para esta primera experiencia vamos a suponer que Ud. ya tiene una placa ARDUINO lista
para usar; ms adelante daremos las diferentes
configuraciones circuitales y los pasos a seguir
para un montaje seguro.
Por razones de espacio no podremos publicar
toda esta informacin y es por ello que ya tenemos desarrollados 6 libros sobre Arudino el primero de los cuales est prximo a publicarse. Ud.
puede descargar los 3 primeros libros de ARDUINO, que entre otras cosas poseen distintas versiones de Placas Arduino para armar, desde
nuestra web:
www.webelectronica.com.ar
Debe hacer clic en el cono password e ingresando la clave: arduino.

En este tutorial asumimos que ests usando


un placa Arduino Duemilanove, Nano o Diecimila.
Si tiene cualquier otra placa necesita leer la pgina correspondiente a la placa que use en esta
gua de iniciacin. En la figura 1 puede apreciar
un detalle de la placa Arduino Uno.
Tambin necesitar un cable estndar USB
(conexin A a conexin B), como los que se usan
para conectar, por ejemplo, una impresora USB.
(En el caso de la placa Arduino Nano necesitar
un cable de conexin A a conexin mini-B). En la
figura 2 puede ver el cable que necesita para
conectar la placa a la computadora.

dESCArgA El IdE dE ArduIno


Descargue la ltima versin de la pgina de
descargas:
http://arduino.cc/en/Main/Software
Podr seleccionar el software adecuado de
acuerdo con el sistema operativo que est empleando, en este caso nosotros descargamos el IDE
de Arduino para Windows.
Cuando la descarga finalice, descomprima el
fichero. Asegrese de mantener la estructura de
directorios. Haga doble clic en la carpeta arduino-00XX para abrirla, debera ver una serie de
ficheros y carpetas ah dentro, figura 3.

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. Ms arriba se indica
cmo descargarlo desde la
web

ConECtE lA PlACA
Conecte la placa Arduino
a su computadora usando el
cable USB, figura 4. el LED
verde indicador de la alimentacin (nombrado como
PWR en la placa) debera
Figura 3 - cono que debe ejecutar para que se abra el entorno de
quedar encendido a partir
desarrollo Arduino.
de ese momento.
Si est usando una placa
Arduino Diecimila, necesitar asegurarse de que la
placa est configurada para
alimentarse mediante la
conexin USB. La fuente de
alimentacin se selecciona
con un puente ("jumper"),
una pequea pieza de plstico que encaja en dos de
los tres pins situados entre
las conectores USB y de alimentacin de la placa.
Compruebe que el puente
est conectando los dos
pins ms cercanos al puerto
USB de la placa.
En las placas Arduino
Duemilanove y Arduino
Figura 4 - Conectando la placa Arduino a la computadora
Nano la fuente de alimentacin adecuada se selecciona de forma automti- deberan descargarse e instalarse automticaca y no requiere tener que realizar ninguna com- mente.
En Windows XP, se abrir el dilogo de instaprobacin en este sentido.
lacin de Nuevo Harware:
Cuando le pregunte: Puede Windows conectarse a Windows Update para buscar el software?
InStAlE loS drIvErS
seleccione No, no esta vez. Haga clic en siguienCuando conecta la placa, Windows debera te.
Seleccione Instalar desde una lista o localiinicializar la instalacin de los drivers (siempre y
cuando no haya utilizado su PC con una placa zacin especfica (Avanzado) y haga clic en
Arduino anteriormente o con algn dispositivo siguiente. Asegrese que Buscar los mejores drique requiera la instalacin de un puerto COM vir- vers en estas localizaciones est seleccionado;
deseleccione Buscar en medios removibles;
tual a partir de un puerto USB).
En Windows Vista y Windows 7, los drivers seleccione Incluye esta localizacin en la bs-

36

Microcontroladores

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 37

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

Figura 5 - Ubicacin de los


drivers para la instalacin de
la placa Arduino.
queda y navegue al directorio drivers/FTDI USB
Drivers dentro de la carpeta de Arduino que ha
descomprimido previamente.
Nota: La versin ms reciente de los drivers
se puede encontrar en la pgina web del fabricante delchip FTDI.
Haga clic en Siguiente
El asistente de instalacin buscar los drivers
y le anunciar que encontr un "USB Serial
Converter" (se traduce por Conversor USBSerie).
Haga click en Finalizar
El asistente de instalacin de hardware volver a iniciarse. Repita los mismos pasos que antes

y seleccione la misma carpeta de instalacin de


los drivers. Esta vez el sistema encontrar un
"USB Serial Port" (o Puerto USB-Serie).
Puede comprobar que los drivers se han instalado correctamente abriendo la carpeta del
Administrador del Dispositivo, en el grupo
Dispositivos del panel de control del sistema.
Busque "USB Serial Port" (o Puerto USB-Serie)
en la seccin de puertos; esa es su placa
Arduino. Si no pudiera realizar la instalacin de
los drivers con xito, puede hacer lo siguiente:

InStAlACIn MAnuAl dEl drIvEr


Vamos a administrar dispositivos:
Inicio clic derecho en equipo administrar administrar dispositivos

Figura 6 - Instalacin manual de los drivers de la placa Arduino

Microcontroladores

37

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 38

A rDuino
Buscamos en otros dispositivos los elementos
desconocidos y con clic
derecho
seleccionamos
actualizar
controlador,
figura 5.
Ahora seleccionamos
buscar software de controlador en el equipo y buscamos la ubicacin de carpeta
Drivers, tal como ya explicamos, figura 6.

Figura 7 - Ejecuccin del software


Arduino.

EjECutE lA APlICACIn ArduIno


Ya estamos en condiciones de comenzar a
trabajar. Haga doble clic en la aplicacin Arduino,
figura 7. Se desplegar la pantalla de inicio del
programa, tal como se muestra en la figura 8.

AbrA El EjEMPlo blInk


Abra el programa de ejemplo para hacer parpadear un LED ("LED blink") que est conectado
en la pata 13 del microcontrolador de la placa
Arduino:
File Examples Digital Blink

Figura 9

Figura 8 - Escritorio de trabajo del entorno de desarrollo (IDE) de Arduino.

38

Microcontroladores

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 39

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

En su computadora
aparecer una imagen
como la mostrada en la
figura 9.

SElECCIonE Su PlACA
Necesitar seleccionar el tipo de placa de su
Arduino en el men:
Tools Board

Figura 10 - Seleccin de la placa Arduino en el IDE.

En la figura 10 puede
ver la imagen que se
despliega, en la que
debe realizar la seleccin. Para las nuevas
placas Arduino con el
chip ATmega 328 (compruebe el texto escrito en
el chip de la placa),
seleccione la opcin
Arduino Duemilanove or
Nano w/ ATmega328 del
men
desplegable.
Anteriormente las placas
Arduino incluan un chip
ATmega 168; para estos
casos seleccione la
opcin
Arduino
Diecimila, Duemilanove,
or Nano w/ ATmega168.

SElECCIonE El
PuErto SErIE
Seleccione el dispositivo serie de la placa
Arduino en el men:
Tools Serial Port
(Herramientas | Puertos Serie).

Figura 11 - Seleccin del puerto en el que est conectada la placa.

En la figura 11 puede
ver la imagen que se
despliega, en la que
debe realizar la seleccin. Lo ms probable es
que sea COM3 o mayor
(COM1 y COM2 se

Microcontroladores

39

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 40

A rDuino

Figura 12 - Carga del programa escrito en el IDE al microcontrolador de la placa


reservan, por regla general para puertos serie de
hardware). Para asegurarse cul es, puede desconectar 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 apropiado que se indica en el Administrador de
Dispositivos.

SubA El SkEtCH A lA PlACA


Cuando abri el archivo de ejemplo, lo que
aparece en la pantalla es el programa que al ser
cargado en el microcontrolador de su placa
Arduino, har parpadear un LED. Para subir el
sketch (programa escrito en el IDE de Arduino)
ahora simplemente pulse sobre el botn "Upload"
en el Men del Entorno Arduino, figura 12.
Espere unos pocos segundos (debera ver parpadear los Led RX y TX de la placa).
Si el volcado del cdigo es exitoso ver aparecer el mensaje "Done uploading" en la barra de
estado.
Nota: Si tiene una placa Arduino Mini, NG, u
otras placas, necesitar presionar el botn de
reseteo de la placa inmediatamente antes de presionar el botn "Upload" del Entorno de
Programacin Arduino.
Unos pocos segundos despus de finalizar el
volcado del programa debera ver cmo el Led de
la placa conectado al pin 13 (L) comienza a parpadear con un color naranja. Si ocurre esto en
hora buena!

*La seccin reference para conocer el lenguaje de programacin Arduino.

CArACtErStICAS tCnICAS dE un ArduIno uno


Arduino UNO es la versin ms conocida de
la placa de entrenamiento, existen dos variantes,
la Arduino UNO convencional, figura 13 y la
Arduino UNO SMD, figura 14. La nica diferencia
entre ambas es el tipo de microcontrolador que
montan. La primera es un microcontrolador
Atmega en formato DIP y la segunda dispone de
un microcontrolador en formato SMD. Para
entendernos, el formato DIP es mucho ms grande que el formato SMD, que se suelda a la superficie de la placa.
En este tutorial haremos uso de la primera
versin porque nos permite programar el chip
sobre la propia placa y despus poder quitarlo
para integrarlo en otro proyecto.
Si su intencin es usar directamente la propia
placa en sus prototipos, cualquiera de las dos
versiones es similar.

rESuMEn dE CArACtErStICAS tCnICAS


Como mencionamos, el Arduino 1 usa un
microcontrolador ATMEL Atmega328, de 28 terminales que opera con una tensin de 5V. En la

Ya tiene su Arduino listo y funcionando!!!


Si tiene problemas, por favor, consulte las
sugerencias ante problemas que se encuentran
en el texto completo del primer libro que puede
descargar desde nuestra web de la forma indicada anteriormente. A partir de ahora tambin podr
consultar:
* Los ejemplos sobre el funcionamiento de
distintos sensores y dispositivos.

40

Microcontroladores

Figura 13 - Arduino Uno Atmega328.

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 41

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

Cada uno de los pines digitales dispone de


una resistencia de pull-up interna de entre 20k
y 50k que est desconectada, salvo que nosotros indiquemos lo contrario.
Arduino tambin dispone de 6 pines de entrada analgicos que trasladan las seales a un
conversor analgico/digital de 10 bits.

PInES ESPECIAlES dE EntrAdA y SAlIdA:


* rX y tX: Se usan para transmisiones serie
de seales TTL.
Figura 14 - Arduino Uno SMD.
tabla 1 puede ver un resumen de las principales
caractersticas de esta placa entrenadora.

* Interrupciones externas: Los pines 2 y 3


estn configurados para generar una interrupcin
en el Atmega328. Las interrupciones pueden dispararse cuando se encuentra un valor bajo en
estas entradas y con flancos de subida o bajada
de la entrada.

EntrAdAS y SAlIdAS
Cada uno de los 14 pines digitales del
Atmega328 se puede usar como entrada o como
salida. Funcionan a 5V y cada pin puede suministrar hasta 40mA. La intensidad mxima de
entrada tambin es de 40mA.

* PWM: Arduino dispone de 6 salidas destinadas a la generacin de seales PWM de hasta 8


bits.
* SPI: Los pines 10, 11, 12 y 13 pueden utilizarse para llevar a cabo comunicaciones SPI,
que permiten trasladar informacin full dplex en
un entorno Maestro/Esclavo.
* I2C: Permite establecer comunicaciones a
travs de un bus I2C. El bus I2C es un producto
de Phillips para interconexin de sistemas embebidos. Actualmente se puede encontrar una gran
diversidad de dispositivos que utilizan esta interfaz, desde pantallas LCD, memorias EEPROM,
sensores, etc.

CMo AlIMEntAr un ArduIno?

Tabla 1 - Caractersticas del Atmega328.

Puede alimentarse directamente a travs del


propio cable USB o mediante una fuente de alimentacin externa, como puede ser un pequeo
transformador o, por ejemplo, una batera de 9V.
Los lmites estn entre los 6V y los 12V. Como
nica restriccin hay que saber que si la placa se
alimenta con menos de 7V, la salida del regulador
de tensin a 5V puede dar menos que esta tensin y si sobrepasamos los 12V, probablemente
daaremos la placa.
La alimentacin puede conectarse mediante
un conector de 2,1mm con el positivo en el cen-

Microcontroladores

41

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 42

A rDuino

Figura 15 - los distintos tipos de placas Arduino.

42

Microcontroladores

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 43

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

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 variantes propuestas y que se
ofrecen comercialmente. Como dijimos, la
ms popular es Arduino
Uno, que en sus tres
tipos se puede ver en la
figura 16.

El IdE ArduIno

Figura 16 Variantes de
Arduino Uno.
tro o directamente a los pines Vin y GND marcados sobre la placa.
Hay que tener en cuenta que podemos medir

Cuando trabajamos con


Arduino, lo que hacemos realmente es mezclar un circuito con una
idea que plasmamos en un programa. Este programa lo grabamos en un chip que es el micro-

Figura 17 - Forma de trabajar con Arduino.

Microcontroladores

43

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 44

A rDuino
controlador que est sobre la placa
de Arduino. Una idea de esta forma
de trabajar la puede ver en la figura
17.
Las siglas IDE significan:
Integrated
Development
Environment, lo que traducido a
nuestro idioma significa Entorno de
Desarrollo Integrado. En el caso de
Arduino se trata de una plataforma
en la que podremos editar los programas que vamos a cargar en la
placa y una serie de botones que
nos permitirn llevar a cabo operaciones como la verificacin de que
nuestro programa es correcto o
programar el microcontrolador,
figura 18.
La ventana o escritorio del programa se divide en cuatro grandes
reas:
* La barra de men, figura 19.
* La barra de botones, figura 20.
* El editor o escritorio, figura 21.
* La barra de mensajes, figura
22.
Figura 18 - Programa escrito en el escritorio de Arduino.
Programacin de un Arduino.
Vamos a comenzar a programar
en Arduino. Arduino utiliza una mezcla curiosa de lenguajes de programacin. Est implementado en
Java, pero para programar los chips
utiliza C++.
Nosotros no pretendemos conseguir que en un taller de un par de
horas la gente se convierta por arte
de magia en grandes programadores, pero s que sean capaces de
hacer sus primeros pinitos mediante
proyectos sencillos y que esto
pueda favorecer que les pique el
gusanillo.
Un programa diseado para ejecutarse sobre un Arduino se conoce
como sketch, que podramos traducir como boceto o borrador. Un
sketch siempre tiene la misma
estructura y tiene un formato como
el de la figura 23.

44

Microcontroladores

Figura 19 - Barra de men.

Figura 20 - La barra de botones

Figura 21 - El escritorio.

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 45

KiT

De

T rAbAjo

e nTorno

De

D esArrollo

continuacin comenzara a repetirse


indefinidamente el contenido de la
funcin loop. Por lo tanto, lo que
escuchara sera:
Bip Bop Bop Bop Bop
Figura 22 - La barra de mensajes.
Hasta que a alguien se le ocurriera
desconectar el cable o la pila del
Arduino.

Figura 23 - Sketch o programa escrito en el escritorio.

Control de entradas y salidas digitales.


Vea en la figura 25 un esquemtico
que representa a la placa Arduino
Uno. Arduino dispone de 14 pines
de entradas y salidas digitales.
Pueden configurarse como pines de
entrada o de salida. Veamos un

ejemplo.

PrCtICA 1:
EnCEndIdo dE un lEd
Un diodo LED es un dispositivo electrnico
que es capaz de producir luz, requiere que se
preste atencin a la polaridad, es decir, debe
tenerse en cuenta que una pata debe estar
conectada a un punto del circuito con una tensin
ms positiva que la otra. El truco es recordar:

Figura 24 - Ejemplo de escritura de un


programa
Lo que se escriba entre las llaves que acompaan al nombre setup, se ejecuta una nica vez
siempre que se encienda o resetee la placa.
Lo que se escriba dentro de las llaves que
acompaan al nombre loop se ejecutar constantemente hasta que se apague o resetee la mquina.
Para entendernos, en la figura 24 tenemos un
pequeo ejemplo grfico.
Si tuviramos un Arduino capaz de entender
este programa, al encenderlo, es decir, al conectarle el cable USB o una pila de 9V. Primero se
ejecutara el contenido de la funcin setup y a

* Un LED dispone de dos patillas, una ms


larga y otra ms corta.
* La pata ms larga debe estar conectada a la
parte ms positiva del circuito.
* El voltaje entre las patas del LED debe estar
dentro de los lmites que indica el fabricante.
Los LEDs suelen encenderse en torno a los
2V. Para limitar la tensin en los extremos de un
LED debemos colocar una resistencia. Si no lo
hacemos podramos llegar a quemarlos.
En sntesis, pretendemos que un LED se
encienda y parpadee. Para nuestro propsito va
utilizar una salida cualquiera del Arduino, en principio, la patita 12. A esta patita vamos a conectar
un LED.
Para que encienda con normalidad y no
daarlo, vamos a colocarle, en serie, una resistencia, yo he representado una de 2,2k, figura
26.

Microcontroladores

45

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 46

A rDuino
Hay que recordar que la pata ms
larga del LED debe conectarse a una
parte ms positiva del circuito, mientras
que la pata ms corta la conectaremos a
tierra utilizando uno de los pines etiquetados como GND (Ground) de la placa
Arduino.

El Programa:
Recuerde, lo que se escribe entre las
Figura 25 - Entradas y salidas de la placa Arduino.
llaves de la funcin setup se ejecuta una
nica vez en el arranque de la placa. Lo
que coloquemos entre las llaves de la funcin
loop se ejecutar una vez tras otra hasta que
apaguemos el Arduino.
Se estar preguntando qu cosas pongo
ah? pues veamos:
pinMode (nmero de pin, entrada o salida).
PinMode es una funcin, es un trozo de cdigo que alguien program para que no tuviramos
que hacerlo nosotros, as que despus de mostrarle el respeto y agradecimiento adecuado
vamos a ver para qu sirve.
Esta funcin configura uno de los pines digitales como entrada o salida. Si recuerda, tenemos
catorce pines digitales, el primero es el 0 y el ltimo es el 13. Adems existen dos posibles configuraciones para cada pin, puede estar configurado como entrada INPUT o como salida OUTPUT.
As que para configurar la pata pin 12 como
salida tendremos que escribir:
pinMode(12, OUTPUT);
Si lo quisiramos configurar como entrada el
pin 11 tendramos que escribir:

Figura 26 - Conexin de un LED en la placa


Arduino Uno.
Arduino recuerde que debe estar desconectado
del resto del circuito.
4) No debe confundir pin con pata del integrado. Pin es la posicin que ocupa el bit a designar
dentro del puerto de entradas y salidas y ese pin
tiene conexin elctrica con una patita del integrado (microcontrolador) que puede tener otro
nmero y que el fabricante brinda en el manual
del dispositivo.

pinMode(11, INPUT);
Antes de proseguir, debemos recordar lo
siguiente:
1) Cuidado! el pin que quiero configurar y la
configuracin que quiero que se le aplique estn
separados por una coma , No se olvides de
ella!
2)El punto y coma del final ; tambin es
importante.
3) Ms importante an, cuando programe un

46

Microcontroladores

Continuemos con la explicacin de las sentencias que necesitamos para la programacin


de nuestro proyecto:
digitalWrite(nmero de pin, estado alto o estado bajo)
A estas alturas, ya tiene que haberse percatado de que esto tiene que ver con seales digitales. Como sabe, las seales digitales binarias
representan dos estados: un estado bajo, tambin conocido como 0, apagado u OFF y un esta-

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 47

KiT
do alto tambin conocido como 1, encendido u
ON. Tambin sabr que el estado alto o HIGH se
representa con 5V (aunque las placas que se alimentan a 3.3V devolvern esto como valor alto) y
que el estado bajo o LOW se representa con 0V.
DigitalWrite necesita dos parmetros para su
programacin o definicin, el primero, una vez
ms, es el nmero de pin digital al que haremos
referencia y el siguiente es el estado que queremos mantener en ese pin, por lo tanto.
Si quiero enviar un valor alto en el pin 12 tendr que escribir:
digitalWrite(12, HIGH);
Si quiero tener 0V en el pin 10 escribir:
digitalWrite(10, LOW);
Otra instruccin que necesitamos es:
delay(milisegundos)
Delay es una funcin ms sencillita que el
resto, hace que toda la ejecucin de Arduino pare
durante los milisegundos que le indiquemos
como argumento. Por lo tanto, si quiero esperar
medio segundo escribir:

De

T rAbAjo

e nTorno

De

D esArrollo

Por ahora, con esto es suficiente ahora qu


hacemos?
Es bien sencillo. Escribimos las instrucciones
mencionadas en el escritorio del software Arduino
una debajo de la otra. Hecho esto, por un lado
pulsaremos sobre el botn que tiene el smbolo
de play, minicadena o reproductor multimedia de
la barra de botones.
Al hacer clic sobre ese botn el sketch escrito
se compilar (se transformar a un lenguaje que
entiende el microcontrolador). Si hubiera cualquier error, nos aparecer un texto en rojo en la
parte baja de la ventana, en la seccin de mensajes. Si todo ha ido bien, podemos subir el programa a la placa.
Lo que haremos es enviar, a travs del cable
USB, el programa traducido a la placa y lo grabar en el chip del microcontrolador.
Este proceso es realmente simple, slo hay
que hacer clic en el botn de programacin.
Sobre la placa hay dos pequeos LEDS, etiquetados con los nombres, TX y RX que deberan comenzar a parpadear, indicando que el programa est siendo transferido. Luego, el Led que
conectamos a la placa debe comenzar a parpadear.

ACtIvIdAdES:
delay(500);
Si quiero esperar diez segundos escribir:
delay(10000);

1. Haga el mismo montaje anterior pero utilizando el pin 7 para conectar el diodo LED.
2. Con el montaje anterior haga que el diodo
est encendido 1 segundo y apagado 2 segundos.
3. Intente ahora hacer que dos LEDs se apaguen y parpadeen de manera secuencial, al estilo del conocido auto fantstico.

PrCtICA 2:
EnCEndIdo dEl lEd l IntEgrAdo En lA PlACA

Figura 27 - Programa para manejar el LED


integrado en la placa.

Si se fija, en la placa, justo enfrente del pin


digital nmero 13, hay un pequeo LED que tiene
serigrafiada la letra L justo al lado. Es un diodo
que est conectado directamente al pin 13 y que
no necesita de ningn componente adicional para
su manejo, ya que la resistencia limitadora est
en la placa.
Podemos utilizarlo en nuestros montajes para
mostrarnos si la placa est teniendo actividad o
no.

Microcontroladores

47

Manual - Arduino.qxd:*Cap 4 - telefonia 21/01/14 10:08 Page 48

A rDuino

Figura 28 - Principales componentes de la placa Arduino Uno.


La manera de programarlo es exactamente la
misma que en los casos anteriores.
Vamos a conseguir que parpadee el LED L
integrado en la placa.
Para desarrollar esta idea slo hace falta la
placa de Arduino y un cable USB. En la figura 27
puede ver cul es el programa que deber escribir.
Realice la prctica y vea los resultados.
Para finalizar, en la figura 27 se muestra la
ubicacin del LED integrado, pero tambin se
pueden observar los principales componentes a
saber:
1- Jack USB jack
2- Jack de alimentacin,
3- Microprocesador
4- Conversor RS232 a USB
5- Cristal de 16MHz
6- Pulsador de reset
7- Led de alimentacin
8- Leds de TX/RX
9- Led integrado (pin 13)

48

Microcontroladores

10- Pines de alimentacin


11- Entradas analgicas
12- Pines de TX y RX TX
13- Entradas / Salidas digitales
14- Pines de Tierra y Referencia
15-ICSP para Atmega328
16- ICSP para interfases USB
Como puede apreciar, el tema se va tornando
apasionante ya que trabajar con Arduino no reviste mayores dificultades.
Pero esto es el comienzo, de ms est decir
que continuaremos desarrollando prcticas para
que Ud. se capacite con esta plataforma.
Recuerde que Ud. puede descargar los 3 primeros libros de ARDUINO, que entre otras cosas
poseen distintas versiones de Placas Arduino
para armar, desde nuestra web:
www.webelectronica.com.ar
Debe hacer clic en el cono password e ingresando la clave: arduino. J