ESP32 - Interruptor
Un interruptor de encendido/apagado (ON/OFF) tiene dos estados: ON (cerrado) y OFF (abierto). Cada vez que se presiona el interruptor, su estado cambia entre ON y OFF y permanece en ese estado incluso cuando se suelta. Este tutorial te guiará sobre cómo usar un interruptor ON/OFF con un microcontrolador ESP32.

Es importante señalar que el interruptor de encendido/apagado es distinto de lo siguiente y no debe confundirse con ellos:
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | |
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca del interruptor de encendido/apagado
Un interruptor de encendido/apagado es un interruptor que, al ser presionado, cambia su estado entre ENCENDIDO y APAGADO, y luego mantiene ese estado incluso cuando se suelta. Para cambiar el estado de nuevo, el interruptor debe volver a ser presionado.
Esquema de pines
Generalmente hay dos tipos de interruptores de encendido/apagado: el interruptor de dos pines y el interruptor de tres pines. Este tutorial se centrará en el uso del interruptor de dos pines, donde no es necesario distinguir entre los dos pines.

Cómo funciona
Hay dos métodos para usar un interruptor de encendido/apagado. La tabla siguiente ilustra el cableado y el estado de lectura en un ESP32 para cada uno de estos dos métodos:
| pin 1 | pin 2 | ESP32 Input Pin's State | |
|---|---|---|---|
| 1 | GND | ESP32 Input Pin (with pull-up) | HIGH ⇒ OFF, LOW ⇒ ON |
| 2 | VCC | ESP32 Input Pin (with pull-down) | HIGH ⇒ ON, LOW ⇒ OFF |
De entre los dos métodos, el tutorial se centrará en uno; en concreto, se utilizará el primer método como ejemplo.
Diagrama de Cableado
- Cómo conectar el ESP32 y un interruptor usando protoboard

This image is created using Fritzing. Click to enlarge image
Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.
- Cómo conectar ESP32 y un interruptor usando placa breakout de terminales de tornillo

Para hacer la conexión de cableado estable y firme, recomendamos usar para soldar los cables y la patilla del interruptor ON/OFF juntas, y luego usar para hacerla segura.
Para una conexión estable y segura, se recomienda utilizar un soldador para soldar los cables y los pines del interruptor ON/OFF juntos, y luego usar tubos termorretráctiles para mayor seguridad.
Código ESP32 - Interruptor de encendido/apagado
Al igual que un botón, un interruptor ON/OFF también necesita anti-rebote (Ver más en ). El anti-rebote complica el código. Afortunadamente, la biblioteca admite la función de anti-rebote. La biblioteca también utiliza un registro de pull-up interno. Esto facilita su programación.
Al igual que un botón, un interruptor ON/OFF también requiere anti-rebote (más información se puede encontrar en ¿Por qué se necesita anti-rebote para el botón, interruptor ON/OFF?). El anti-rebote puede hacer que el código sea más complejo. Afortunadamente, la biblioteca ezButton ofrece funcionalidad de anti-rebote y utiliza registros pull-up internos, lo que facilita la programación.
※ Nota:
Dos casos de uso comunes para un interruptor de encendido/apagado son:
- El primer caso de uso: Si el interruptor está en el estado encendido, realizar una acción determinada. Si el estado de entrada está apagado, realizar la acción opuesta.
- El segundo caso de uso: Si el estado del interruptor cambia de encendido a apagado (o de apagado a encendido), realizar una acción específica.
Pasos R\u00e1pidos
- Siga el diagrama de cableado proporcionado arriba para conectar el interruptor ON/OFF al ESP32.
- Conecte su ESP32 a su PC usando un cable USB.
- Abra el IDE de Arduino.
- Instale la biblioteca ezButton. Consulte las instrucciones
- Seleccione la placa y el puerto adecuados en el IDE de Arduino.
- Compile y cargue el código en la placa ESP32 haciendo clic en el botón Subir en el IDE de Arduino.
- Pruebe el interruptor ON/OFF encendiéndolo.
- Observe la salida en el Monitor Serial del IDE de Arduino.
- Apague el interruptor.
- Observe la salida en el Monitor Serial del IDE de Arduino.
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.