Académique Documents
Professionnel Documents
Culture Documents
En esta primera leccin no vamos a aprender mucho acerca de electrnicos, sino que vamos a
aprender un poco de lo que es Arduino y sus principales caractersticas. Adems te diremos que
es lo que necesitas para empezar a trabajar con los proyectos que veremos en estas lecciones.
Arduino es una plataforma open source para prototipado electrnico basado en un hardware y
software amigable y de fcil uso. Est pensado para el uso de artistas, diseadores, aficionados
de la electrnica, hardware hackers y cualquier persona interesada en crear objetos, hardware o
ambientes interactivos. La plataforma Arduino se compone de dos partes que son:
-Microcontrolador Atmega328
-6 entradas anlogas.
-Reloj de 16 MHz.
Arduino Leccin 1 Hello World!
En esta primer leccin de Arduino por fin nos pondremos a programar un poco en nuestra tarjeta
de desarrollo y para esto vamos a realizar el famossimo Hello World! que en nuestro caso
vamos a hacer parpadear un LED. Pero antes vamos a enlistar las cosas que necesitamos para
nuestro primer hack.
2.-Cable USB-Serial: Este cable nos servir para conectar nuestra tarjeta Arduino a nuestra
computadora.
3.-LED: Este pequeo componente es un semiconductor que emite luz y que ser la prueba de
que nuestro programa funciona.
Antes que nada debemos de descargar nuestro software de desarrollo, en este software es donde
vamos a programar nuestro Arduino. Para esto tenemos que ingresar a la siguiente pagina:
http://www.arduino.cc/en/Main/Software
Una vez que lo hayas descargado procedemos a abrir el programa y veremos una pantalla como
la siguiente:
Para ahorrarnos un poco de tiempo y no escribir todo el programa haremos uso de los ejemplos
con los que cuenta el IDE de Arduino. Lo haremos como se muestra en la siguiente imagen:
Ahora tenemos en nuestro programa el siguiente cdigo:
Ms adelante explicaremos que es lo que hace cada parte del cdigo, por lo pronto sigamos
adelante.
// en nuestro caso es el 13
void setup() {
pinMode(led, OUTPUT);
}
// Aqu creamos una rutina llamada Loop, la cual se corre de manera infinita
void loop() {
}
Leccin 2 Arduino Introduccin al
lenguaje de programacin de Arduino
Como has visto en las anteriores lecciones a este Arduino cuenta con su propio lenguaje de
programacin. Es preferible que cuando quieras programar en Arduino cuentes con un poco de
experiencia en el rea de programacin ya que esto har ms gil el aprendizaje de estas
lecciones. Si no tienes mucha experiencia programando te recomendamos que no te desesperes,
tal vez entiendas rpido que es lo que estamos haciendo. De otra manera si te gustara aprender
ms acerca de programacin te recomendamos paginas como
Codeacademy http://www.codecademy.com/es/learn. Por lo pronto sigamos adelante y
aprendamos ms de acerca de la programacin de Arduino. Vamos a dividir en secciones este
post a manera que sea ms fcil su comprensin.
Software de desarrollo
En la imagen hemos sealado con letras algunos de los botones que vamos a describir.
a.-Verificar: Ayuda a que el entorno de desarrollo nos revise nuestro cdigo, posiblemente
hayamos programado o escrito algo de manera incorrecta pero con este botn se podr revisar
para saber si todo est bien.
b.-Cargar: Una vez que verifiquemos que nuestro cdigo est bien escrito necesitaremos cargar
el cdigo a la tarjeta. Con este botn cargaremos nuestro proyecto en la tarjeta para poder
correrlo. Este botn ser el que ms utilizaremos en todas las lecciones y proyectos con Arduino.
setup() : En esta parte se se hace la preparacin del programa, por ejemplo asignacin de los
pines de Entrada/Salida.
loop() : Es la ejecucin de nuestro programa, esta parte es la que siempre se est ejecutando. En
pocas palabras es nuestro programa principal.
Como ya habamos dicho antes las dobles diagonales (//) significan comentario, y todo lo que
escribamos despus de estas ser ignorado por nuestro programa y no se ejecutar.
void setup() {
}
void loop() {
Variables
Una variable es un tipo de dato, que como su nombre lo dice su valor o contenido varia
dependiendo la operacin que hagamos con ella. Existen diferentes tipos de variables como: int,
float, char, etc. Por el momento no explicaremos todas pero conforme vayamos necesitando en la
lecciones las explicaremos, por lo pronto describiremos las ms comunes:
Byte: Almacena valores numricos de 8 bits, lo que significa que solo podemos almacenar
valores de 0 a 255.
Int: Almacena valores enteros de 16 bits, su rango va desde -32,768 a 32,767.
long: Almacena valores de 32 bits, su rango va desde -2,147,483,648 a 2,147,483,647.
float: Almacena valores de tipo flotantes de 32 bits, significa que podemos hacer uso de
decimales. Su rango: -3.4028235E+38 a 3.4028235E+38.
char: Es un tipo de dato que ocupa un byte de memoria y almacena un valor de carcter. Los
carcteres literales se escriben con comillas simples: A (para varios carcteres -strings- utiliza
dobles comillas ABC).
Para poder usar una variable dentro de nuestro programa primero tenemos que declararla, qu
significa esto?, significa que le decimos al programa que nos reserve un espacio en memoria para
nuestro dato variable.
Las variables pueden ser globales o locales. Las variables globales son usadas en todo el ciclo de
vida del programa, las variables locales solamente se usan en pequeos pedazos de cdigo y
despus ya no se utilizan.
Por lo general las variables globales se declaran antes del setup():
void setup() {
int var = 0;
Esto significa que nuestra variable de tipo int (entero) llamada var tomara el valor de 0 para
empezar a correr el programa, conforme avance nuestro programa avanza var puede tomar
otros valores.
Operaciones Aritmticas
En este lenguaje de programacin existen operadores aritmticos tales como suma(+), resta(-
), multiplicacin (*), divisin (/), residuo(%) y asignacin(=). Estos operadores actan
sobre las variables y constantes por ejemplo:
x = 0;
y = 5;
x = y + 5;
Operaciones Lgicas
And (&&)
Or (||)
Not(!)
Estos operadores se pueden usar dentro de operaciones condicionales o en una sentencia if. Ms
adelante hablaremos ms de esto. Ahora solo lo explicaremos:
&& (AND)
if (x == 5 && y == 10) {
//
|| (OR):
Verdadero si alguno de los dos (o los dos) operadores son Verdadero, por ejemplo:
if (x == 5 || y == 10) {
//
! (NOT)
if (!x) {
//
Tal vez en estos momentos no entiendas mucho de lo que estamos hablando pero no te
preocupes, conforme vayamos avanzando y aprendiendo ms todo tendr sentido.
Existen diferentes estructuras para la toma de decisiones en un programa, algunas sentencias nos
sirven para hacer algo si pasa algo o mientras pasa algo. Vamos a la explicacin y tal vez
con los ejemplos nos entendamos mejor.
if, el cual puede ser usado en conjunto con uno o ms operadores de comparacin, comprueba si
cierta condicin se cumple, por ejemplo, si un input posee un valor mayor a cierto nmero. El
formato para una comprobacin if es el siguiente:
Estatuto ifelse
if/else permite mayor control sobre el flujo del cdigo que la declaracin if bsica, por permitir
agrupar mltiples comprobaciones. Por ejemplo, un input anlogo podra ser comprobado, y
tomarse una accin si el valor del inputes menor a 500, y, otra accin se ser igual o mayor a 500.
El cdigo se vera as:
// accin A
}
else
// accin B
else puede proceder a una comprobacin if, de esta forma, se pueden realizar mltiples
comprobaciones en una misma estructura de condiciones.
Estatuto for
La declaracin for es usada para repetir un bloque encerrado entre llaves. Un incremento de un
contador es usado, normalmente, para aumentar y terminar con el bucle. La estructura for es muy
til para la mayora de las operaciones repetitivas, y habitualmente se usa para operaciones con
vectores, para operar sobre conjuntos de datos/pines
//funcin(es);
La inicializacin , o inicializacin, se produce slo la primera vez. Cada vez que se va a repetir
el bucle, se revisa la condicin, o condicin: si es cierta, el bloque de funciones (y el incremento
del contador) se ejecutan, y la condicin vuelve a ser comprobada de nuevo. Si la condicin es
falsa, el ciclo termina.
Ciclo while()
Los ciclos while se ejecutan continuamente, hasta que la expresin de dentro del parntesis, (),
pasa a ser falsa. Algo debe modificar la variable comprobada, el ciclo while nunca terminar. Lo
que modifique la variable puede estar en el cdigo, como una variable que se incrementa, o ser
una condicin externa, como el valor que da un sensor.
while(expresion){
// sentencia(s)
}
Ciclo dowhile
El ciclo do trabaja de la misma manera que el ciclo while, con la excepcion de que la
condicin se comprueba al final del bucle, por lo que este bucle se ejecuta siempre al menos
una vez.
do
// bloque de instrucciones
} while (condicin);
Esto fue una pequea introduccin a la programacin de Arduino, solo tocamos pequeos temas
que estaremos usando el lecciones posteriores. Ser normal que si ya has programado antes todo
lo anterior te parezca muy familiar, eso es bueno y servir como un repaso. Si nunca has
programado y esto te parece totalmente nuevo no te preocupes, poco a poco conforme
avancemos en las lecciones empezaras a entender.
Si quieres empezar a conocer ms por tu cuenta te invitamos a que le des un vistazo a la pagina
de referencia de Arduino donde viene un poco ms explicado y con algunos ejemplos.
http://arduino.cc/es/Reference/HomePage