Arduino es una pequea placa de microcontrolador con un puerto USB para
conectar al ordenador y diversos zcalos de conexin que se pueden conectar mediante cableado a todo tipo de componentes electrnicos externos, como motores, rels, sensores de luz, diodos lser, altavoces, micrfonos, etc. Se puede alimentar mediante la conexin USB del ordenador o con una pila de 9 V. La placa se puede controlar directamente desde el ordenador o programarla con ste y posteriormente desconectarla para trabajar de forma autnoma. A un programa realizado con Arduino se le denomina Sketch.
Estructura general de un sketch
Un programa diseado para ejecutarse sobre un Arduino (un sketch) siempre se
compone de tres secciones:
1. La seccin de declaraciones directamente al principio del sketch.
de
variables
globales:
ubicada
2. La seccin llamada void setup(): delimitada por llaves de apertura y
cierre. 3. La seccin llamada void loop(): delimitada por llaves de apertura y cierre. La primera seccin de un Sketch ser la declaracin de variables (que no tiene ningn tipo de smbolo delimitador de inicio o de final), donde definiremos las variables globales del Sketch declarando su tipo y, si queremos, su valor inicial. Estas variables sern accesibles desde cualquier parte de nuestro Sketch al contrario que las variables locales, que son las que se declaran dentro de una funcin o dentro de una estructura de control (por ejemplo un bucle For). En el interior de las otras dos secciones (es decir, dentro de sus llaves) deberemos escribir las instrucciones que deseemos ejecutar en nuestra placa, teniendo en cuenta lo siguiente:
Las instrucciones escritas dentro de la seccin void setup() se ejecutan una
nica vez, en el momento de encender (o resetear) la placa Arduino.
Las instrucciones escritas dentro de la seccin void loop() se ejecutan justo
despus de las de la seccin void setup() infinitas veces hasta que la placa se apague (o se resetee). Es decir, el contenido de void loop() se ejecuta desde la 1 instruccin hasta la ltima, para seguidamente volver a ejecutarse desde la 1 instruccin hasta la ltima, para seguidamente ejecutarse desde la 1 instruccin hasta la ltima, y as una y otra vez.
Por tanto, las instrucciones escritas en la seccin void setup() normalmente
sirven para realizar ciertas preconfiguraciones iniciales y las instrucciones del interior de void loop() son, de hecho, el programa en s que est funcionando continuamente.
Sobre las maysculas, tabulaciones y puntos y comas
Conviene aclarar ya pequeos detalles que deberemos tener en cuenta a la hora
de escribir nuestros sketches para evitarnos muchos dolores de cabeza. Por ejemplo, es necesario saber que el lenguaje Arduino es case-sensitive. Esto quiere decir que es totalmente diferente escribir una letra en mayscula que en minscula. Dicho de otra forma: para el lenguaje Arduino HolA y hOLa son dos palabras distintas. Esto tiene una implicacin muy importante: no es lo mismo escribir por ejemplo Serial.begin(9600); que serial.begin(9600);. En el primer caso la instruccin estara correctamente escrita, pero en el segundo, en el momento de compilar el cdigo el IDE se quejara porque para l serial (con s minscula) no tiene ningn sentido. As que hay que vigilar mucho con respetar esta distincin en los cdigos que escribamos.
Otro detalle: todas las instrucciones (incluyendo tambin las declaraciones
de variables) acaban con un punto y coma. Es indispensable aadir siempre este signo para no tener errores de compilacin, ya que el compilador necesita localizarlo para poder detectar el final de cada instruccin escrita en el sketch. Si se olvida, se mostrar un texto de error que puede ser obvio (falta un punto y coma) o no. Si el texto del error es muy oscuro o sin lgica, es buena idea comprobar que la causa no sea la falta de un punto y coma en las lneas justamente anteriores a la marcada por el compilador como causante del problema.
Comentarios
Un comentario es un texto escrito intercalado con el cdigo del sketch que se
utiliza para informar sobre cmo funciona ese cdigo a la persona que en algn momento lo est leyendo. Es decir, los comentarios son texto de ayuda para los seres humanos que explica el cdigo asociado y ayudan a entenderlo y recordar su funcin. Los comentarios son completamente ignorados y desechados por el compilador, por lo que no forman parte nunca del cdigo binario que ejecuta el microcontrolador (as que no ocupan espacio en su memoria).
Los comentarios pueden aparecer dentro del cdigo de diferentes formas:
Comentarios compuestos por una lnea entera (o parte de ella): para
aadirlos deberemos escribir dos barras ( // ) al principio de cada lnea que queramos convertir en comentario. Tambin podemos comentar solamente una parte de la lnea, si escribimos las barras en otro punto que no sea el principio de esta; de esta manera solamente estaremos comentando lo que aparece detrs de las barras hasta el final de la lnea, pero lo anterior no.
Comentarios compuestos por un bloque de varias lneas seguidas:
para aadirlos deberemos escribir una barra seguida de un asterisco ( /* ) al principio del bloque de texto que queramos convertir en comentario, y un asterisco seguido de una barra ( */ ) al final de dicho bloque. Todos los caracteres y lneas ubicados entre estas dos marcas de inicio y final sern tratadas automticamente como comentarios. Hay que tener en cuenta, por otro lado, que comentarios unilineales se pueden escribir dentro un comentario multilineal, pero uno multilineal dentro de otro no.