Encender un LED con Arduino: Primera Clase y Código Básico
Primera Clase de Robótica: ¿Qué es un LED y cómo encenderlo con Arduino?
¡Bienvenidos a su primera práctica de electrónica y programación! Hoy daremos el primer paso en el mundo de la robótica controlando la luz. Nuestro protagonista es el componente más famoso de todos: el LED.
¿Qué significa LED?
LED significa Light Emitting Diode (Diodo Emisor de Luz). Es un componente electrónico que transforma la energía eléctrica directamente en luz. A diferencia de las lámparas antiguas, no se calienta tanto y consume muy poca energía.
La Regla de Oro: La Polaridad
Los LEDs tienen "polaridad", lo que significa que la corriente eléctrica sólo puede fluir a través de ellos en una dirección. Si lo conectas al revés, simplemente no encenderá. Para identificarlos, observa sus "patitas" (terminales):
- Ánodo (+): Es la pata más larga. Se conecta al voltaje positivo (en nuestro caso, a un Pin del Arduino, como el Pin 13).
- Cátodo (-): Es la pata más corta (y el lado plano del plástico). Se conecta a tierra (GND en el Arduino).
Dato técnico: ¡Nunca conectes un LED directamente a los 5 voltios sin protección! Siempre usamos un Resistor (generalmente de 220 o 330 ohms) para frenar la corriente y evitar que el LED se queme.
Simulador Interactivo: Programando el Pin 13
En Arduino, usamos el comando digitalWrite() para enviar electricidad a un pin. Toca los botones a continuación para simular el envío de código a la placa y observa cómo reacciona el LED virtual.
Estado actual: LOW (Apagado)
El Código Completo para tu Arduino
Para que esto funcione en la vida real, debemos estructurar nuestro código en dos partes obligatorias: setup() (configuración inicial) y loop() (el bucle que se repite por siempre).
void setup() {
// Le decimos al Arduino que el Pin 13 actuará como SALIDA de energía
pinMode(13, OUTPUT);
}
// 2. Bucle principal: Se repite infinitamente
void loop() {
digitalWrite(13, HIGH); // Enciende el LED (Envía 5 voltios)
delay(1000); // Espera 1 segundo (1000 milisegundos)
digitalWrite(13, LOW); // Apaga el LED (Corta la energía)
delay(1000); // Espera otro segundo
}