Introducción a Arduino y C
1. Qué es Arduino? #
Arduino es una plataforma de hardware libre diseñada para facilitar el uso de la electrónica y la programación a usuarios sin experiencia previa. Está compuesta principalmente por una placa con microcontrolador y un entorno de desarrollo (IDE) fácil de usar. Arduino permite crear proyectos interactivos como robots, sensores inteligentes, automatización doméstica, entre otros.
Introducción a la plataforma Arduino #
Arduino cuenta con varias placas, siendo las más comunes Arduino Uno, Arduino Mega, Arduino Nano y Arduino Leonardo. La elección dependerá del proyecto a realizar. Todas estas placas se basan en microcontroladores que permiten controlar componentes electrónicos mediante un programa cargado desde el ordenador.
Componentes básicos de una placa Arduino Uno:
- Microcontrolador (ATmega328P en Arduino Uno)
- Pines digitales (entrada/salida)
- Pines analógicos (entrada)
- Conexión USB
- Alimentación externa y regulador de voltaje
- LED integrado (pin 13)
Instalación y configuración del entorno Arduino IDE #
Arduino IDE es el software oficial para programar placas Arduino, basado en el lenguaje C y C++. A continuación se indican los pasos para instalar y configurar el IDE:
-
Descarga del IDE Arduino:
- Ir a la página oficial: https://www.arduino.cc/en/software
- Seleccionar la versión según tu sistema operativo (Windows, macOS o Linux).
-
Instalación:
- Ejecutar el archivo descargado y seguir los pasos del asistente.
- Abrir Arduino IDE una vez finalizada la instalación.
-
Configuración inicial:
- Conectar la placa Arduino al ordenador mediante cable USB.
- Seleccionar el tipo de placa desde el menú superior:
Herramientas -> Placa -> Arduino Uno(u otra según corresponda). - Seleccionar el puerto COM correspondiente desde:
Herramientas -> Puerto.
Estructura básica de un programa en C para Arduino #
El código básico en Arduino consta principalmente de dos funciones:
- setup(): Se ejecuta una sola vez al iniciar el programa. Aquí se realizan configuraciones iniciales, como declarar pines de entrada/salida.
- loop(): Se ejecuta repetidamente de forma indefinida. Aquí va la lógica principal del programa.
Ejemplo de un programa básico: encender y apagar un LED integrado
1// Definir el pin del LED 2int ledPin = 13; 3 4void setup() { 5 pinMode(ledPin, OUTPUT); // configurar el pin como salida 6} 7 8void loop() { 9 digitalWrite(ledPin, HIGH); // encender LED 10 delay(1000); // esperar 1 segundo 11 digitalWrite(ledPin, LOW); // apagar LED 12 delay(1000); // esperar otro segundo 13}
En este ejemplo sencillo se usa pinMode(), digitalWrite() y delay(), funciones fundamentales en proyectos Arduino.
2. Cómo practicar Arduino? #
Existen varias plataformas online gratuitas donde puedes probar la mayoría de los ejemplos de Arduino sin necesidad de tener la placa física. Aquí te dejo las más recomendadas:
3. Tinkercad Circuits (Autodesk) #
✅ Recomendada para principiantes y docentes
- Permite simular placas Arduino Uno con sensores, botones, LEDs, zumbadores, etc.
- Puedes programar en lenguaje C/C++ (Arduino).
- Interfaz muy intuitiva y visual.
- No requiere instalación: todo es online.
- Puedes guardar proyectos, compartir enlaces y trabajar en grupo.
🔧 Soporta:
- Lecturas analógicas (
analogRead) - PWM (
analogWrite) Serialydelay(),millis()- Montaje de circuitos realistas
📌 Requiere registro gratuito.
4. Wokwi Arduino Simulator #
✅ Ideal para usuarios más avanzados
- Simulador rápido y ligero.
- Puedes escribir código directamente en C/C++.
- Soporta múltiples placas (UNO, MEGA, ESP32, etc.)
- Simulación precisa de sensores como DHT11, LM35, HC-SR04, LCDs, EEPROM, etc.
- Permite ver la traza de tiempo en millis(), consumo de RAM y depuración.
🎯 Características clave:
- Puedes clonar y compartir proyectos fácilmente.
- También tiene modo sin cuenta (guardar como enlace).
- Editor con autocompletado.
5. Arduino Cloud Web Editor #
✅ Oficial de Arduino
- Editor en la nube con compilador real (no simulador visual).
- Útil si tienes una placa conectada al ordenador.
- Permite compilar y subir el código directamente si tienes el plugin instalado.
- No permite simulación de sensores como Tinkercad, pero sí verificar el código.
📌 Necesitas una cuenta Arduino gratuita.
Resumen del tema
Conceptos clave #
- Plataforma Arduino: ecosistema de hardware libre basado en microcontroladores (como el ATmega328P en Arduino Uno) para el desarrollo de prototipos electrónicos interactivos.
- Estructura del Programa en C/C++:
setup(): función de inicialización que se ejecuta una sola vez al encender o reiniciar la placa.loop(): bucle principal que se ejecuta de manera continua e indefinida.
- Funciones Básicas:
pinMode()para configurar pines como entrada o salida,digitalWrite()para emitir niveles lógicos ydelay()para pausas de tiempo. - Herramientas y Simuladores: Arduino IDE para compilación y carga de código, junto con simuladores web como Tinkercad Circuits y Wokwi para practicar sin hardware físico.
Qué debes recordar #
Todo programa en Arduino se estructura en torno a setup() para configuración inicial y loop() para la ejecución cíclica de la lógica de control.