Noticias Destacadas
Inicio » Documentación » Programación » Estructura de un Sketch

Estructura de un Sketch

Se denomina Sketch a una parte de código fuente listo para abrir con el entorno de desarrollo integrado de Arduino y ser cargado sobre nuestro dispositivo. Sobre él se escribirá todo el comportamiento que tendrá nuestro proyecto, incluyendo respuesta ante entradas determinadas, cálculos internos, salidas del sistema, etc… Su extensión actual es .ino.

Un sketch se compone al menos de dos partes. Mejor dicho, un sketch necesita de dos bloques para su compilación:

 El bloque setup()

La parte de código representada como void setup() se ejecuta una sola vez cuando comienza el programa. Aun cuando no escribamos nada en él, es necesario escribirlo y añadir las llaves de apertura y cierre { }. Es el método encargado de recoger la configuración. Se suele emplear para determinar si un determinado ‘pin’ es salida o entrada, establecer su valor inicial, inicializar el puerto serie…

El bloque loop()

Como su propio nombre indica, la función void loop() se ejecuta de forma ininterrumpida, una y otra vez. Con este bucle logramos que nuestro programa responda ante los distintos eventos que se produzcan en nuestro proyecto.

¿Qué es una función?

Unas líneas más arriba hemos hablado de void loop() como una función. Cuando tenemos bloques de código que van a ser usados a menudo, ya sea en un mismo sketch o en distintos, podemos crear una función. Por tanto, una función no es más que un bloque de código que se sitúa fuera de las funciones setup() y loop(), con un nombre característico, que puede tener uno o más parámetros de entrada, y puede devolver o no un valor determinado.

El prototipo de cualquier función es el siguiente:

  • Si una función no devuelve ningún valor, el tipo  será void .
  • En el caso de devolver algún valor, será necesario incluir una sentencia return valor;, momento en el que la función terminará.
  • Si una función no necesita ningún parámetro de entrada, es necesario incluir igualmente los paréntesis, tanto el de apertura como el de cierre.

 Las llaves { } y el punto y coma ;

Las llaves { } delimitan bloques de código como funciones, sentencias if…etc, marcando el comienzo y el fin del mismo. Toda llave de apertura ha de tener una llave de cierre de forma balanceada. 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, o limitar los distintos elementos que constituyen un bucle for. El olvido del punto y coma es uno de los errores que más se repiten cuando se está empezando a programar.

Comentarios

Si ves algún sketch, verás partes del código que están escritas en lenguaje humano, es decir, no entendible para el IDE de Arduino. 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, por ejemplo, para describir el funcionamiento del programa de forma global, el por qué de una función, la utilización de unas determinadas variables, etc.

Existen dos tipos de comentarios, los de una línea y los de varias líneas:

– Los comentarios de una sóla 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. Dentro de un bloque de comentarios no se puede especificar otro bloque de comentarios, pues éste acaba cuando se percibe el primer símbolo de cierre */.

Como podéis observar en el anterior código, la línea que está marcada es la que producirá error.


9 Comentarios

  1. ¿ En qué tres partes o bloques se estructura un programa con Arduino ?

    • Hola. Tan sólo necesitamos dos bloques (setup y loop) para ejecutar un programa. Si queremos dividirlo en más bloques, un tercer bloque pudiera ser el bloque de funciones, donde se declaran y definen las distintas funciones que se pueden llamar a lo largo del sketch. Gracias.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies