⭐ Principiante
⏱️ 15 minutos
Botón de luz
Vas a hacer un botón de luz. Pulsas una vez: el LED se enciende. Pulsas otra vez: el LED se apaga. Así aprendes cómo Arduino "siente" un botón.
🧰 ¿Qué necesitas?
🗺️ Esquema de conexión
Sigue los cables desde el Arduino hasta cada pieza. Puedes elegir tú los colores de los cables.
| Desde | Hasta |
|---|---|
Arduino UNO · D2 |
Pulsador · 1 |
Pulsador · 2 |
Arduino UNO · GND |
Arduino UNO · D13 |
Resistencia 220 Ω · 1 |
Resistencia 220 Ω · 2 |
LED (lucecita) · ANODE |
LED (lucecita) · CATHODE |
Arduino UNO · GND |
🛠️ Así lo construyes
- Pon el pulsador sobre la ranura de tu breadboard.
- Conecta una patita con pin 2 y una patita del otro lado con GND.
- Pon el LED con una resistencia de 220 Ω en pin 13, la patita corta hacia GND.
💻 El código
// Botón de luz
// Pulsa una vez el botón: el LED se enciende. Otra vez: el LED se apaga.
const int BOTON_PIN = 2; // El pulsador está en pin 2 (el otro lado a GND)
const int LED_PIN = 13; // El LED está en pin 13 (con la resistencia)
bool ledEncendido = false; // Recuerda si el LED ahora está encendido o apagado
bool botonAnterior = HIGH; // Cómo estaba el botón la vez anterior
void setup() {
pinMode(BOTON_PIN, INPUT_PULLUP); // Entrada con resistencia interna: suelto = HIGH, pulsado = LOW
pinMode(LED_PIN, OUTPUT);
}
void loop() {
bool boton = digitalRead(BOTON_PIN);
// Solo reaccionar en el momento en que pulsas el botón
if (botonAnterior == HIGH && boton == LOW) {
ledEncendido = !ledEncendido; // Cambiar: encendido pasa a apagado, apagado pasa a encendido
digitalWrite(LED_PIN, ledEncendido ? HIGH : LOW);
delay(50); // Espera corta contra el "rebote" del botón
}
botonAnterior = boton;
}
🧠 ¿Qué hace el código?
- El botón está en pin 2 con
INPUT_PULLUP. Suelto, el pin está HIGH. Pulsado, está LOW. - Recordamos si el LED está encendido o apagado en
ledEncendido. - Solo en el momento en que pulsas el botón, cambiamos
ledEncendido.
🎯 Prueba esto…
- Haz que el LED parpadee en vez de quedarse encendido
- Haz que el LED se apague solo después de 10 segundos
- Cuenta cuántas veces se ha pulsado el botón y muéstralo en el monitor serie
🚀 Construye este proyecto con Codey: abre codey.online/es/starter-kits/uno/projects/light-switch y haz clic en HAZ ESTO. Entonces el código y el esquema de conexión estarán listos enseguida.
Codey Online es un producto de OTRONIC