Se denomina Sketch al código que necesitamos escribir para que sea interpretado por nuestro Arduino. Normalmente lo escriberemos dentro del la aplicación que nos permite traducir instrucciones simples que los humanos podamos entender al lenguaje que entiende nuestro Arduino. Esta aplicación se llama IDE (Entorno de Desarrollo, o en
inglés Integrated Development Environment) y genera ficheros con extensión ino.
Un sketch se compone al menos de dos partes. Mejor dicho, un sketch necesita
de dos bloques para poder ser compilado correctamente (que es la palabra técnica que se utiliza
para el proceso de traducir las instrucciones que estamos escribiendo a un lenguaje
que pueda entender el microprocesador).
Estructura de un Sketch
void setup()
{
y aquí escribimos las instrucciones en
líneas separadas por “;”
}
void loop()
{
y aquí escribimos las instrucciones en
líneas separadas por “;”
}
|
El bloque setup()
|
La
parte de código representada como void setup() se ejecuta una sola
vez cuando comienza el programa.
Nos sirve para decirle al Arduino, qué partes de la placa vamos a usar para el proyecto que estamos desarrollando. Si Arduino fuera un cuerpo humano, sería algo así como decirle para el Sketch CogerLaPelota, solo necesitas usar los ojos y los brazos. Y de ese modo el robot concentra todos sus recursos en esas dos cosas, y se olvida de estar pendiente del olfato, del gusto, de la temperatura...
En nuestro caso sería como que alguien te avise que vas a salir por la tele, y que tengamos que estar pendiente de 19 canales de televisión toda la tarde a que nos digan “sintoniza TVE1”. Lo mismo le sucede a nuestro pequeño robot.
Es la forma de que sepa por donde y cómo queremos que interaccione con el mundo, es donde le decimos al Arduino, que pines de su placa vamos a usar y con qué objeto.
En esta parte del sketch, es donde configuramos, qué pines y que finalidad va a tener, por ejemplo para enceder un LED, o bien para recibir algún dato, etc.
Nos sirve para decirle al Arduino, qué partes de la placa vamos a usar para el proyecto que estamos desarrollando. Si Arduino fuera un cuerpo humano, sería algo así como decirle para el Sketch CogerLaPelota, solo necesitas usar los ojos y los brazos. Y de ese modo el robot concentra todos sus recursos en esas dos cosas, y se olvida de estar pendiente del olfato, del gusto, de la temperatura...
En nuestro caso sería como que alguien te avise que vas a salir por la tele, y que tengamos que estar pendiente de 19 canales de televisión toda la tarde a que nos digan “sintoniza TVE1”. Lo mismo le sucede a nuestro pequeño robot.
Es la forma de que sepa por donde y cómo queremos que interaccione con el mundo, es donde le decimos al Arduino, que pines de su placa vamos a usar y con qué objeto.
En esta parte del sketch, es donde configuramos, qué pines y que finalidad va a tener, por ejemplo para enceder un LED, o bien para recibir algún dato, etc.
Aun cuando no escribamos nada en él, es necesario escribirlo y añadir las llaves de apertura y cierre { }.
En
nuestro primer ejemplo, en el que enseñamos a guiñar un “ojo” que situamos en
el pin 13, le decimos
void setup() {
// aquí le decimos a nuestro Arduino que el LED, es para que
hable, o lo que es lo mismo para mandar un mensaje de salida, un OUTPUT (salida en inglés)
pinMode(led, OUTPUT);
}
El bloque loop()
Es
la parte principal de nuestro programa pues en el tendremos que poner el código
para que el microcontrolador lo ejecute de manera recursiva, es decir, esta
parte del Sketch se repetirá una y otra vez mientras la placa Arduino tenga
energía. Por ejemplo:
void loop() {
digitalWrite(led, HIGH); // enciende el
LED (on)
delay(1000); // espera por un 1000 milisegundos
digitalWrite(led, LOW); // apaga el LED (off)
digitalWrite(led, LOW); // apaga el LED (off)
delay(1000); //
espera por un 1000 milisegundos
}
Nota: Toda llave de apertura
{ ha de tener una llave de cierre al final del
bloque de instrucciones, a modo de bocadillo }. Mientras editamos el
código en el IDE de Arduino, si situamos el cursor justo después de una llave
de apertura {, veremos resaltada la
llave de cierre } asignada a la misma,
permitiéndonos comprobar si lo que hemos escrito es realmente lo que hemos
querido escribir.
Por su parte, el punto y coma ; se emplea para poner
fin a una declaración (que es el nombre técnico que se le da a una instrucción
concreta que hayamos escrito). El olvido del punto y coma es uno de los errores que más se repiten
cuando se está empezando a programar.
Pero mirando nuestro Sketch más simple vemos que hay además existe una instrucción solitaria al
principio de todo
int led = 13;
que no va ni entre llaves, ni está dentro de las dos
estructuras que hemos comentado
void setup(), void loop()
Muy bien, veo que estáis en todo. Esto es lo que se conoce
técnicamente como zona de declaración de
variables. Es algo parecido a un listín telefónico. A todo el mundo le resulta más cómodo llamar a alguien por
su nombre que por su DNI. Pues con ese propósito, el Sketch te permite apuntar
en un sitio, cosas que vas a usar de forma repetitiva pero que no quieres
memorizar. Por ejemplo la ubicación del LED de parpadeo. Decidimos que va a ser
en el PIN número 13, pues a partir de ahí, con tal de referirnos a él como
“led” basta. El IDE traducirá esa “variable” por el número 13.
Puede que ahora no le veas mucho sentido porque solo
tenemos un LED y sabemos donde está.
Pero si tu Sketch tuviera 5000 líneas de código, y a mitad del proceso
de programación decidiera cambiar la ubicación del LED al pin 8, tendrías que
cambiarlo en cada instrucción que hayas dado al Arduino a lo largo de todo el
programa, o bien, si has usado la zona de declaración de variable, cambiar int led=
13, por int led =8, y todo estaría funcionando en un solo segundo. ¿A que
parece un buen truco?. Pues no se te olvide, eso se hace usando la declaración
de variables.
¿Recordáis
todo lo que hemos visto?: zona de declaración de
variables, uso de llaves { }, bloque setup(), y bloque loop().
¡Pues seguro que se os olvida algo! Y para eso están los comentarios. Si nuestro sketch, verás partes del
código que están escritas en lenguaje demasiado humano. Efectivamente hay frases que
están escritas con objeto de autoexplicar lo que estamos haciendo y lógicamente
no son entendible para el IDE de Arduino. Son como si fueran un “post-it” en el
código para no olvidarnos de lo que hemos hecho, o por qué lo estamos haciendo.
Un buen sketch va siempre acompañado de unos
buenos comentarios, es decir, líneas de código que el programa ignorará y que nos
servirán a la hora de entender mejor el código.
Existen dos tipos de comentarios, los de una línea y los de varias líneas:
- Los comentarios de una sola línea han de comenzar por //, y duran hasta que se encuentra un retorno de carro.
- Los comentarios de varias líneas o bloques de comentarios
han de estar delimintados por /* al comienzo y por */ al
final.
es → en
because
conjunción: since, then
adverbio: then, well
No hay comentarios:
Publicar un comentario