ESP32 - Botón - LED

Este tutorial explica cómo usar el ESP32 para controlar un LED según el estado de pulsación del botón. En detalle:

También tenemos otro tutorial: ESP32 - Botón que Alterna el LED, que alterna el estado del LED entre ENCENDIDO y APAGADO cuando se pulsa el botón.

Hardware Requerido

1×Módulo de Desarrollo ESP32 ESP-WROOM-32
1×Cable USB Tipo-A a Tipo-C (para PC USB-A)
1×Cable USB Tipo-C a Tipo-C (para PC USB-C)
1×Botón para Protoboard con Tapa
1×Kit de Botón para Protoboard
1×Botón Pulsador de Panel
1×Módulo de Botón Pulsador
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Protoboard
1×Cables Puente
1×(Opcional) Conector de Alimentación DC
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para ESP32
1×(Recomendado) Breakout Expansion Board for ESP32
1×(Recomendado) Divisor de Alimentación para ESP32

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)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Buy Note: Use the LED Module for easier wiring. It includes an integrated resistor.

Acerca del LED y del botón

Tenemos tutoriales específicos sobre LED y botón. Cada tutorial contiene información detallada e instrucciones paso a paso sobre el pinout de hardware, el principio de funcionamiento, el cableado al ESP32 y el código para ESP32... Obtén más información sobre ellos en los siguientes enlaces:

Diagrama de cableado entre ESP32, LED y botón

Diagrama de cableado del LED del botón ESP32

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ódigo ESP32

/* * Este código de ESP32 fue desarrollado por es.newbiely.com * Este código de ESP32 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/esp32/esp32-button-led */ #define BUTTON_PIN 18 // ESP32 pin GPIO18, which connected to button #define LED_PIN 21 // ESP32 pin GPIO21, which connected to led // variables will change: int button_state = 0; // variable for reading the button status void setup() { // initialize the LED pin as an output: pinMode(LED_PIN, OUTPUT); // initialize the button pin as an pull-up input: // the pull-up input pin will be HIGH when the button is open and LOW when the button is pressed. pinMode(BUTTON_PIN, INPUT_PULLUP); } void loop() { // read the state of the button value: button_state = digitalRead(BUTTON_PIN); // control LED according to the state of button if (button_state == LOW) // if button is pressed digitalWrite(LED_PIN, HIGH); // turn on LED else // otherwise, button is not pressing digitalWrite(LED_PIN, LOW); // turn off LED }

Pasos R\u00e1pidos

  • Si esta es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en el IDE de Arduino.
  • Realiza el cableado tal como en la imagen de arriba.
  • Conecta la placa ESP32 a tu PC mediante un cable micro USB.
  • Abre el IDE de Arduino en tu PC.
  • Selecciona la placa ESP32 correcta (p. ej. Módulo de desarrollo ESP32) y el puerto COM.
  • Copia el código anterior y pégalo en el IDE de Arduino.
  • Compila y carga el código a la placa ESP32 haciendo clic en el botón Subir en el IDE de Arduino.
Subir código al IDE de Arduino
  • Presiona y mantén presionado el botón durante varios segundos
  • Observa el cambio en el estado del LED

Explicación de código línea por línea

El código ESP32 anterior contiene una explicación línea por línea. ¡Por favor lea los comentarios en el código!

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.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!