
Video
Diagrama del circuito

Código fuente
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Encender un LED con pulsador (Push)
4// ─────────────────────────────────────────
5// El LED permanece encendido mientras se mantiene el botón y se apaga al
6// soltarlo (pulsador). Muestra cómo leer un botón con digitalRead e
7// if-else.
8//
9// Pines:
10// D13 -> Botón, otra patilla a 5V
11// D13 -> Resistencia de 10k a GND (pull-down)
12// D7 -> LED (con una resistencia de 330 ohmios)
13
14void setup() {
15 pinMode(13, INPUT); // Entrada del botón (pull-down externa)
16 pinMode(7, OUTPUT); // Salida del LED
17}
18
19void loop() {
20 if (digitalRead(13) == HIGH) { // ¿Está pulsado el botón?
21 digitalWrite(7, HIGH); // Pulsado: LED encendido
22 } else {
23 digitalWrite(7, LOW); // Soltado: LED apagado
24 }
25}
26Preguntas frecuentes
¿Para qué sirve una resistencia de 10 kΩ?▾
Es una resistencia pull-down: al conectar el pin a GND cuando el botón no está pulsado, garantiza una lectura estable en LOW. Si no se utiliza esta resistencia, el pin queda sin conexión y se lee un valor aleatorio entre HIGH y LOW, por lo que el LED parpadea por sí solo.
¿Puedo conectar un botón sin utilizar una resistencia?▾
Sí, con pinMode(pin, INPUT_PULLUP) se activa la resistencia pull-up interna del Arduino. En este caso, el pulsador se conecta entre el pin y GND y la lógica se invierte: se lee LOW cuando está pulsado y HIGH cuando se suelta.
¿Qué pines del botón debo utilizar?▾
En los botones de cuatro patas, las dos patas opuestas ya están conectadas internamente. Coloca el botón sobre el hueco del centro de la placa de pruebas y utiliza las patas cruzadas; así te asegurarás de elegir las patas correctas.
¿Cuál es la diferencia entre «Push» y «On-Off»?▾
En el modo «Push», el LED solo se enciende mientras se mantiene pulsado el botón. En el modo «On-Off» (toggle), cada pulsación cambia el estado del LED y este permanece encendido aunque se suelte el botón; para ello se necesita una variable de estado.
