Introducción al lenguaje de programación Arduino

📅 03/01/2025 👤 Julio Fuente 📂 programar

Main Image

¿Cómo se pueden escribir programas para la placa Arduino? Arduino admite de forma nativa un lenguaje que llamamos lenguaje de programación Arduino o lenguaje Arduino.

¿Cómo puedes escribir programas para tu placa Arduino?

Arduino, de forma nativa, soporta un lenguaje que llamamos Lenguaje de Programación Arduino, o Lenguaje Arduino.

Este lenguaje se basa en la plataforma de desarrollo Wiring , que a su vez se basa en Processing , que, si no lo conoces, es en lo que se basa p5.js. Es una larga historia de proyectos que se basan en otros proyectos, de una manera muy Open Source. El IDE de Arduino se basa en el IDE de Processing y el IDE de Wiring, que se basa en él.

Cuando trabajamos con Arduino comúnmente utilizamos el Arduino IDE (Integrated Development Environment), un software disponible para todas las principales plataformas de escritorio (macOS, Linux, Windows), que nos brinda 2 cosas: un editor de programación con soporte de librerías integradas, y una forma de compilar y cargar fácilmente nuestros programas Arduino a una placa conectada al computador.

El lenguaje de programación Arduino es básicamente un marco construido sobre C++. Se podría argumentar que no es un lenguaje de programación real en el sentido tradicional, pero creo que esto ayuda a evitar confusiones para los principiantes.

Un programa escrito en el lenguaje de programación Arduino se llama sketch . Normalmente, un sketch se guarda con la .inoextensión (de Ardu ino).

La principal diferencia con el C o C++ “normal” es que todo el código se envuelve en dos funciones principales. Por supuesto, se pueden tener más de dos, pero cualquier programa Arduino debe proporcionar al menos esas dos.

Uno se llama setup(), el otro se llama loop(). El primero se llama una vez, cuando se inicia el programa, el segundo se llama repetidamente mientras se ejecuta el programa.

No tenemos una main()función como la que se usa habitualmente en C/C++ como punto de entrada para un programa. Una vez que compilas tu boceto, el IDE se asegurará de que el resultado final sea un programa C++ correcto y básicamente agregará el pegamento faltante al preprocesarlo.

Todo lo demás es código C++ normal, y como C++ es un superconjunto de C, cualquier C válido también es código Arduino válido.

Una diferencia que podría causarle problemas es que, si bien puede generar su programa en varios archivos, todos esos archivos deben estar en la misma carpeta. Puede ser una limitación que lo desestime si su programa va a crecer mucho, pero en ese punto será fácil pasar a una configuración nativa de C++, lo cual es posible.

Parte del lenguaje de programación Arduino son las bibliotecas integradas que le permiten integrarse fácilmente con la funcionalidad proporcionada por la placa Arduino larutadelosorigenes.es.

Seguramente tu primer programa con Arduino consistirá en hacer que un LED se encienda y luego se apague. Para ello, utilizarás las funciones pinMode(), delay()y digitalWrite(), junto con algunas constantes como HIGH, LOW, OUTPUT.

Así, el primer proyecto canónico de Arduino (el “¡Hola, mundo!”):

#define LED_PIN 13void setup() {    // Configure pin 13 to be a digital output    pinMode(LED_PIN, OUTPUT);}void loop() {    // Turn on the LED    digitalWrite(LED_PIN, HIGH);    // Wait 1 second (1000 milliseconds)    delay(1000);    // Turn off the LED    digitalWrite(LED_PIN, LOW);    // Wait 1 second    delay(1000);}

Todo esto es parte del lenguaje de programación Arduino, o mejor dicho, lo llamaríamos suite o biblioteca .

Como recordatorio, quiero señalar que no estás limitado a usar este lenguaje e IDE para programar un Arduino. Existen proyectos, entre otros, que te permiten ejecutar código Node.js en él usando el proyecto Johnny Five , código Python usando pyserial y código Go con Gobot , pero el lenguaje de programación Arduino es definitivamente en el que verás la mayoría de los tutoriales, ya que es la forma nativa y canónica de trabajar con estos dispositivos.

Arduino establece dos constantes que podemos usar para

HIGHEquivale a un alto nivel de voltaje, que puede variar según el hardware (2 V en placas de 3,3 V como Arduino Nano, 3 V en placas de 5 V como Arduino Uno) LOWequivale a un bajo nivel de voltaje. Nuevamente, el valor exacto depende de la placa utilizada

Luego tenemos 3 constantes que podemos usar en combinación con la pinMode()función:

La otra constante que tenemos es LED_BUILTIN, que apunta al número del pin integrado, que generalmente equivale al número 13.

Además de esto, tenemos las constantes C/C++ truey false.

En esta sección voy a hacer una referencia a las funciones integradas que proporciona el lenguaje de programación Arduino.

Ciclo de vida del programa

Manejo de E/S

Las siguientes funciones ayudan a manejar la entrada y salida de su dispositivo Arduino.

E/S digital

Entrada/salida analógica

Nota: hay más funciones matemáticas integradas si las necesita, documentadas aquí .

En Arduino, como en la mayoría de lenguajes, es imposible obtener números realmente aleatorios, y la secuencia es siempre la misma, por lo que se inicia con la hora actual o (en el caso de Arduino) se puede leer la entrada desde un puerto analógico .




Tal vez te puede interesar:

  1. Introducción a React
  2. Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
  3. Cómo cambiar el valor de un nodo DOM
  4. Cómo comprobar si un elemento DOM tiene una clase

Créditos de la imagen http://dbbeebom