Introducción a la Programación con Arduino: De LED a Vectores

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,23 KB

¿Qué es Arduino?

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.

Es una placa programable con entradas y salidas digitales y analógicas. Esto significa que disponemos de un pequeño autómata, capaz de recibir información del entorno (sensores) y realizar acciones (actuadores, motores…), según un programa que introducimos con un ordenador y que puede ejecutar de forma autónoma.

Programación en Arduino: El Lenguaje y la Estructura de un Sketch

El Lenguaje de Programación

El lenguaje con el que se programan nuestras placas Arduino es un derivado del lenguaje de programación Wiring. Su estructura y sintaxis son iguales que las de C. De hecho, todas las librerías de C y algunas de C++ se pueden utilizar con Arduino.

Estructura Básica de un Sketch

Un programa o sketch de Arduino se divide principalmente en tres partes:

1. Declaración de Variables

La primera parte de un sketch será la declaración de variables, donde definiremos las variables globales del programa declarando su tipo y, si queremos, su valor inicial.

2. La Función setup()

La segunda parte es una sección que solo se ejecuta una vez tras el arranque de la placa Arduino: la función setup(). Suele utilizarse para configurar los pines que vamos a utilizar, declarándolos como entradas o como salidas. Estos modos se pueden cambiar durante la ejecución del sketch. La función setup() debe considerarse como lo que es: un conjunto de código que solo se ejecuta una vez cuando Arduino arranca.

3. La Función loop()

La tercera parte del programa es el loop(). Es la sección principal de nuestro programa, pues en él tendremos que poner el código para que el microcontrolador lo ejecute de manera cíclica; es decir, esta parte del sketch se repetirá una y otra vez mientras la placa Arduino tenga energía.

Funciones Adicionales

No todo el código tiene que estar en el loop(). Ciertas partes pueden ser escritas fuera de este bucle en forma de funciones. Las funciones son fragmentos de código separado a los que se puede llamar desde el setup() o desde el loop(), pero eso lo veremos más adelante.

Los sketches generados desde el Arduino IDE se guardan en archivos con la extensión .ino (anteriormente .pde).

Ejercicios Prácticos con Arduino

Ejercicio 1: Parpadeo de un LED

Montaje

Básico.

Código

Ejemplo básico “BLINK”.

Contenidos Clave

  • Comunicación entre la placa y el ordenador.
  • Estructura de un sketch.
  • Definición de variables.
  • Empleo de salidas digitales.
  • Comentarios y bloques de comentarios.

Uso de Comentarios

Se emplean para aclarar el programa y hacerlo más legible para nosotros en el futuro y para otros programadores. Los comentarios de una sola línea se indican con //. Al igual que en C, se pueden introducir bloques de comentarios de varias líneas con /* ... */.

Modificación Propuesta

  • Encender tres LED simultáneamente y apagarlos sucesivamente.
  • Definir una variable denominada tiempo y cambiar el intervalo de parpadeo a través de esa variable.

Ejercicio 7: Uso de Vectores (Arrays)

Montaje

3 LEDs en pines PWM y un potenciómetro.

Código de Partida

Ejemplo “AnalogInput”.

Contenidos Clave

  • Uso de vectores: Declaración y uso.
  • Textos como vector de caracteres.
  • Textos como objetos String.

Declaración y Uso de Vectores (Arrays)

Un array (o vector) es una colección de valores del mismo tipo a los que se puede acceder con un número de índice (el primer valor del índice es 0).

Formas de declarar un vector en Arduino:

Definición y asignación simultánea:

int miVector[] = {valor0, valor1, valor2...};

Definición y asignación posterior:

// Se declara un array de 5 enteros
int miVector[5];

// Se asigna un valor al cuarto elemento (índice 3)
miVector[3] = 10;

Recuperar un valor del vector:

// Se recupera el cuarto elemento y se asigna a la variable x
x = miVector[3];
Ejemplos:
// Vector de enteros con longitud implícita
int vectorEnteros[] = {2, 8, -6, 11, 5};

// Vector de caracteres de 5 elementos
char vectorCaracteres[5] = "hola";

Acceso a los Elementos de un Vector

El primer elemento de un vector siempre tiene el índice 0. Así que, en el siguiente ejemplo:

int miVector[] = {2, 8, -6, 11, 5};

El elemento miVector[4] corresponde al valor 5 (el quinto y último elemento).

Entradas relacionadas: