En este momento estás viendo Clase 5: Blink, el primer programa

Clase 5: Blink, el primer programa

¿Qué es Arduino y para qué sirve?

Curso: De Arduino al ESP32 — Microcontroladores para Proyectos Reales
Módulo: 1 — Fundamentos Arduino
Nivel: Principiante | Sin conocimientos previos requeridos
Tiempo estimado de lectura: 15–20 minutos



¿Qué vas a aprender en esta clase?

Al terminar esta clase vas a poder:

  • Explicar qué es un microcontrolador y para qué se usa
  • Identificar las partes principales de una placa Arduino UNO
  • Entender la estructura básica de un programa en Arduino
  • Escribir y simular tu primer programa: el Blink (LED parpadeando)

1. ¿Qué es un microcontrolador?

Antes de hablar de Arduino, necesitamos entender qué es un microcontrolador.

Un microcontrolador es un pequeño chip que contiene, en un solo componente:

  • Un procesador (que ejecuta instrucciones)
  • Memoria (para guardar el programa y los datos)
  • Pines de entrada y salida (para conectarse al mundo físico: sensores, LEDs, motores, etc.)

La diferencia con una computadora común es que el microcontrolador está diseñado para hacer una sola tarea específica, de forma continua y eficiente. Por eso los encontrás en electrodomésticos, autos, semáforos, lavarropas, y casi cualquier dispositivo electrónico moderno.

💡 Ejemplo cotidiano: cuando apretás el botón de «inicio» en un lavarropas, un microcontrolador lee ese botón, activa el motor, controla la temperatura del agua y gestiona todo el ciclo de lavado. No es una computadora, es un chip pequeño con un programa fijo.


2. ¿Qué es Arduino?

Arduino es una plataforma de electrónica de código abierto compuesta por dos partes:

  1. Hardware: una placa con un microcontrolador (generalmente de la familia AVR de Atmel/Microchip) y los circuitos necesarios para conectarla a una computadora y a otros componentes
  2. Software: el IDE de Arduino (entorno de desarrollo), donde escribís el código que luego se carga en la placa

Lo que hace especial a Arduino es que fue diseñado para ser accesible para no especialistas: artistas, diseñadores, docentes, estudiantes y entusiastas pueden aprender a programar electrónica sin necesidad de conocimientos avanzados en ingeniería.

Fue creado en 2005 en el Instituto de Diseño de Ivrea (Italia) y hoy es la plataforma de prototipado electrónico más popular del mundo.


3. La placa Arduino UNO — partes principales

La placa más usada para aprender es el Arduino UNO. Vamos a conocer sus partes:

                    ┌──────────────────────────────────┐
                    │          ARDUINO UNO             │
   Puerto USB ────► │ [USB]                    [Reset] │
│ │ Alimentación ───► │ [Jack DC] [ATmega328P] │ │ │ Pines 0-13 ───► │ D0 D1 D2 D3 D4 D5 D6 D7 D8...D13 │ │ │ Pines A0-A5 ────► │ A0 A1 A2 A3 A4 A5 │
│ │ GND, 5V, 3.3V ─► │ GND 5V 3.3V AREF │
└──────────────────────────────────┘
ComponenteFunción
Microcontrolador ATmega328PEl «cerebro» de la placa
Puerto USBPara conectar a la PC y cargar el programa
Pines digitales (D0–D13)Entrada o salida de señales digitales (0 o 1)
Pines analógicos (A0–A5)Leer señales analógicas (0 a 1023)
Pin 5V y GNDAlimentación para los componentes conectados
LED integrado (pin 13)LED soldado en la placa, conectado al pin digital 13
Botón ResetReinicia el programa desde el principio

📌 Dato clave: el Arduino UNO tiene un LED integrado conectado al pin 13. Eso nos permite hacer nuestro primer programa sin necesidad de conectar ningún componente externo.


4. ¿Cómo se programa Arduino?

Los programas de Arduino se llaman sketches (bocetos). Se escriben en un lenguaje basado en C/C++, simplificado para facilitar el aprendizaje.

Todo sketch de Arduino tiene obligatoriamente dos funciones:

setup()

Se ejecuta una sola vez al encender o reiniciar la placa. Se usa para configurar los pines, inicializar la comunicación serie, configurar librerías, etc.

void setup() {
  // Este código se ejecuta una vez al iniciar
}

loop()

Se ejecuta continuamente, en un ciclo infinito, mientras la placa esté encendida. Aquí va la lógica principal del programa.

void loop() {
  // Este código se repite indefinidamente
}

🔄 Pensalo así: setup() es como preparar los ingredientes antes de cocinar. loop() es la cocción que seguís revisando y ajustando continuamente.


5. Funciones básicas que vas a usar

Antes de escribir el primer programa, necesitás conocer tres funciones esenciales:

pinMode(pin, modo)

Configura un pin como entrada o salida.

pinMode(13, OUTPUT);  // El pin 13 será una salida
pinMode(2, INPUT);    // El pin 2 será una entrada

digitalWrite(pin, valor)

Envía una señal digital a un pin: HIGH (5V, encendido) o LOW (0V, apagado).

digitalWrite(13, HIGH);  // Enciende el LED del pin 13
digitalWrite(13, LOW);   // Apaga el LED del pin 13

delay(milisegundos)

Pausa el programa durante la cantidad de milisegundos indicada. 1000 ms = 1 segundo.

delay(1000);   // Espera 1 segundo
delay(500);    // Espera medio segundo

6. Tu primer programa: el Blink

El Blink es el «Hola Mundo» de Arduino: un programa que hace parpadear el LED integrado. Es simple, pero te enseña los conceptos fundamentales.

El código completo

// Blink — hace parpadear el LED integrado del Arduino UNO
// El LED integrado está conectado al pin 13

void setup() {
  // Configura el pin 13 como salida
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);   // Enciende el LED
  delay(1000);               // Espera 1 segundo
  digitalWrite(13, LOW);    // Apaga el LED
  delay(1000);               // Espera 1 segundo
}

¿Qué hace este código, paso a paso?

  1. En setup() le decimos al Arduino que el pin 13 va a ser una salida (va a enviar señal, no recibirla)
  2. En loop(), el programa repite eternamente este ciclo:
    • Pone el pin 13 en HIGH → el LED se enciende
    • Espera 1000 ms (1 segundo)
    • Pone el pin 13 en LOW → el LED se apaga
    • Espera 1000 ms (1 segundo)
    • …y vuelve a empezar

7. Simulalo ahora — sin comprar nada

No necesitás tener una placa física para probarlo. Usamos Wokwi, un simulador online gratuito que reproduce el comportamiento real de Arduino.https://wokwi.com/projects/new/arduino-uno

👉 Abrir simulación en Wokwi

Nota: en Wokwi, pegá el código del Blink en el editor de la derecha y presioná Play. El LED integrado del Arduino UNO (marcado como «L» en la placa) comenzará a parpadear.


8. Actividad: modificá el Blink

Ahora que el Blink funciona, te propongo tres modificaciones para que experimentes:

Nivel 1 — Cambiá la velocidad: Modificá los valores de delay() para que el LED parpadee más rápido (probá con 200 ms) o más lento (probá con 2000 ms).

delay(200);   // Parpadeo rápido

Nivel 2 — Patrón asimétrico: Hacé que el LED esté encendido 2 segundos y apagado solo 200 ms.

digitalWrite(13, HIGH);
delay(2000);              // Encendido 2 segundos
digitalWrite(13, LOW);
delay(200);               // Apagado 0.2 segundos

Nivel 3 — SOS en código Morse: El código Morse de SOS es: · · · — — — · · · (tres cortos, tres largos, tres cortos). Intentá programar ese patrón usando HIGHLOW y distintos valores de delay().


9. Resumen de la clase

En esta clase aprendiste:

  • Un microcontrolador es un chip que procesa información y controla dispositivos físicos
  • Arduino es una plataforma de hardware y software de código abierto para prototipado electrónico
  • La placa Arduino UNO tiene un microcontrolador ATmega328P, pines digitales/analógicos y un LED integrado en el pin 13
  • Todo sketch tiene dos funciones obligatorias: setup() (se ejecuta una vez) y loop() (se repite indefinidamente)
  • Las funciones básicas son pinMode()digitalWrite() y delay()
  • El Blink es el primer programa estándar: hace parpadear el LED usando estas funciones

10. Glosario de la clase

TérminoDefinición
MicrocontroladorChip que integra procesador, memoria y periféricos I/O
ArduinoPlataforma de hardware/software open source para electrónica
SketchNombre que Arduino da a sus programas
Pin digitalPin que trabaja con dos estados: HIGH (5V) o LOW (0V)
setup()Función que se ejecuta una sola vez al iniciar
loop()Función que se repite en ciclo infinito
digitalWrite()Función para enviar señal HIGH o LOW a un pin
delay()Función para pausar el programa N milisegundos
WokwiSimulador online gratuito de Arduino y ESP32

Deja una respuesta