ESP32 - Conteo de botones - LCD

En este tutorial, exploraremos las capacidades del ESP32 para lograr los siguientes objetivos:

Además, este tutorial aborda el antirrebote del botón sin depender de la función delay(). Para una comprensión completa de por qué es crucial el antirrebote, puedes consultar la explicación proporcionada en Why do we need debouncing?.

Este tutorial te guiará a través del proceso para integrar de forma fluida el conteo de pulsaciones de botones, la funcionalidad de la pantalla LCD I2C y las técnicas de antirebote en tu proyecto ESP32.

Hardware Requerido

1×38-pin ESP32 ESP-WROOM-32 Dev Module - Narrow
1×(Alternativo) 38-pin ESP32 ESP-WROOM-32 Dev Module - Wide
1×(Alternativo) 30-pin ESP32 ESP-WROOM-32 Dev Module - Wide
1×(Alternativo) ESP32 Uno-form board
1×(Alternativo) ESP32 S3 Uno-form board
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×LCD I2C Display 3.3V
1×(Alternativo) LCD I2C 20x4
1×Protoboard
1×Cables Puente
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 (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.

Nota de compra: La mayoría de las pantallas LCD I2C del mercado son de 5V. Puede que funcionen con esta placa, pero no es seguro y puede dañar la placa. Recomendamos encarecidamente usar la pantalla LCD I2C de 3.3V recomendada arriba.

Acerca de LCD I2C y el botón

¿No está familiarizado con LCD I2C y un botón, incluyendo sus pines, funcionalidad y programación? Explora tutoriales completos sobre estos temas a continuación:

Diagrama de Cableado

Diagrama de cableado de LCD I2C para ESP32 con botón

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 - mostrando el recuento de botones en una LCD I2C

/* * 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-count-lcd */ #include <DIYables_LCD_I2C.h> #include <ezButton.h> DIYables_LCD_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows ezButton button(27); // create ezButton object that attach to the ESP32 pin GPIO27 unsigned long lastCount = 0; void setup() { Serial.begin(9600); lcd.init(); // initialize the lcd lcd.backlight(); // open the backlight button.setDebounceTime(50); // set debounce time to 50 milliseconds button.setCountMode(COUNT_FALLING); } void loop() { button.loop(); // MUST call the loop() function first unsigned long count = button.getCount(); if (lastCount != count) { Serial.println(count); // print count to Serial Monitor lcd.clear(); lcd.setCursor(0, 0); // start to print at the first row lcd.print("Count: "); lcd.print(count); lastCount != count; } }

Pasos R\u00e1pidos

  • Si es la primera vez que usa ESP32, consulte cómo configurar el entorno para ESP32 en Arduino IDE.
  • Realice el cableado tal como se muestra en la imagen anterior.
  • Conecte la placa ESP32 a su PC mediante un cable micro USB.
  • Abra Arduino IDE en su PC.
  • Seleccione la placa ESP32 correcta (p. ej. ESP32 Dev Module) y el puerto COM.
  • Haga clic en el icono Libraries en la barra izquierda del Arduino IDE.
  • Busque “ezButton”, luego encuentre la biblioteca ezButton por ArduinoGetStarted.
  • Haga clic en el botón Install para instalar la biblioteca ezButton.
Biblioteca de botones para ESP32
  • Busca “DIYables LCD I2C”, luego encuentra la biblioteca DIYables_LCD_I2C de DIYables
  • Haz clic en el botón Instalar para instalar la biblioteca DIYables_LCD_I2C.
Biblioteca DIYables LCD I2C para ESP32
  • Copia el código anterior y ábrelo con Arduino IDE
  • Haz clic en el botón Subir en Arduino IDE para subir el código al ESP32
  • Presiona el botón varias veces
  • Observa cómo cambia el número que se está contando en la pantalla LCD

※ Nota:

La dirección I2C del LCD puede variar según los fabricantes. En el código, usamos 0x27, que está especificada por el fabricante DIYables.

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!