Presione el botón con Esptop 10 - Arduino IDE

Presione el botón con Esptop 10 - Arduino IDE

ESP32 es una placa IoT que puede interactuar con diferentes periféricos externos para generar salidas. ESP32 toma la entrada de dispositivos como botones Push y genera respuestas de acuerdo con la entrada recibida. Los botones de presentación se pueden usar para controlar múltiples sensores y dispositivos como controlar un LED o mantener la velocidad de los motores. Aquí en esta lección, discutiremos la interfaz de botón Push con ESP32.

La siguiente es la tabla de contenido para esta lección:

1: Introducción al botón Push

2: funcionamiento del botón Push

2.1: Modos de trabajo del botón Push

3: Botón Push de interfaz con ESP32

3.1: Pins de salida de entrada digital en ESP32

3.2: Cómo leer entradas digitales en ESP32

3.3: Botón de entrada de interfaz con ESP32 usando la función de lectura digital

3.4: Se requiere hardware

3.5: Esquema

3.6: Código para interactuar ESP32 con el botón PUSH

3.7: salida

1: Introducción al botón Push

Un botón Push es un botón simple con un mecanismo para controlar los estados de diferentes máquinas o procesos. El botón Push está formado por material duro como plástico o metal y la superficie superior suele ser plana, lo que permite a los usuarios presionarlo.

En los proyectos ESP32, el botón PUSH se usa ampliamente para controlar los estados de entrada y salida del PIN. Los interruptores de palanca y los botones de presentación funcionan con principios ligeramente diferentes. El interruptor convencional o de palanca se repite una vez que se presiona mientras el botón Push es un dispositivo de dos posiciones que generalmente se detiene una vez que se libera.

Vamos a profundizar en el principio de funcionamiento del botón Push en detalles:

2: funcionamiento del botón Push

Un botón Push normalmente tiene 4 pines. Estos 4 pines están conectados en forma de un par, como dos pines superiores, están conectados internamente de manera similar, los otros dos también están conectados internamente.


Para saber qué dos pines están conectados, tome un multímetro (dmm) y configúrelo examen de continuidad, Ahora adjunte la sonda positiva con cualquier pata del botón y luego una por una conecte la sonda negativa del multímetro con otras piernas. Si la conexión se completa entre ambos extremos, el sonido del pitido se puede escuchar desde el multímetro. Esas dos patas que están conectadas internamente completarán el circuito.

1: Modos de trabajo del botón Push

Para usar el botón Push en un circuito necesitamos un pin de cada par conectado internamente. Si tomamos los pines del botón Push del mismo par que están conectados internamente, dará como resultado un cortocircuito, ya que estos ya están conectados, omitirá el mecanismo de botón Push.

Basado en este mecanismo, el botón Push puede funcionar en los siguientes dos modos:


Si tomamos un ejemplo del modo que se muestra en la imagen a continuación. Podemos ver que cuando no se presiona el botón, la conexión interna está abierta una vez que se presiona el botón, se conectará el terminal interno A y B y el circuito se completará.


Ahora hemos completado el principio básico detrás del funcionamiento de los botones de Push. A continuación, interactuaremos con un botón simple con ESP32 y controlaremos un LED que lo usa.

3: Botón Push de interfaz con ESP32

Antes de interfactar el botón Push con ESP32, uno debe conocer los pines GPIO que se pueden usar como entrada. Ahora discutiremos los pines de salida de entrada digital en ESP32.

1: Pins de salida de entrada digital en ESP32

ESP32 tiene un total de 48 Pins, cada uno de los cuales es específico para una determinada función, entre los 48 alfileres, algunos no están físicamente expuestos, lo que significa que no podemos usarlos con fines externos. Estos pines están integrados dentro de ESP32 para diferentes funciones.

El tablero ESP32 tiene 2 variantes diferentes que 36 alfileres y 30 patas. Aquí la diferencia de 6 alfileres entre ambos tableros se encuentra debido a 6 pines de flash SPI integrados disponibles para la comunicación SPI en un 36 variante de pines de la placa ESP32. Sin embargo, estos 6 pines SPI no se pueden usar para otros fines, como la salida de entrada.

El siguiente Pinout es de 30 pines Junta ESP32:


Entre todos los GPIO solo 4 pines (34, 35, 36 y 39) son de entrada solo mientras todos los demás pines se pueden usar tanto para la entrada como para la salida. Como se mencionó anteriormente, los 6 pines SPI no se pueden usar para la entrada o salida.

2: Cómo leer entradas digitales en ESP32

La entrada del botón Push se puede leer en un pin GPIO definido para el que una función PinMode () necesita definirse primero dentro del código Arduino. Esta función establecerá el pin GPIO como entrada. PinMode () La sintaxis de la función es la siguiente:

PinMode (GPIO, entrada);


Para leer datos de un pin GPIO definido DigitalRead () se llamará a la función. El siguiente es el comando que uno puede usar para tomar datos del botón Push en un pin GPIO:

DigitalRead (GPIO);

3: Botón de entrada de interfaz con ESP32 usando la función de lectura digital

Ahora interactuaremos ESP32 con PushButton usando el lectura digital función en cualquier pin GPIO. Tomar la entrada del botón de empuje un LED se encenderá o apagará.

4: Se requiere hardware

A continuación se muestra la lista de componentes requeridos:

    • Junta ESP32
    • Un LED
    • Resistencias de 220 ohmios
    • Botón de 4 pines
    • Tablero de circuitos
    • Conectando cables de puente

5: Esquema

A continuación se muestra el diagrama esquemático del botón Push con ESP32. Aquí la entrada se lee desde el botón Push en el Pin 15 de GPIO, y LED está conectado al PIN GPIO 14.

6: Código para el botón Push InterfaCing con ESP32

Ahora se utilizará el código de cargar en ESP32 Arduino IDE Editor. Abra el IDE y conecte la placa ESP32 después de que seleccione el puerto COM de la sección de la herramienta. Una vez que la placa ESP32 esté lista, pegue el código en IDE y haga clic en Cargar:

const int push_button = 15; /*Pin digital 15 definido para el botón Push*/
const int led_pin = 14; /*Pin digital 14 definido para LED*/
int button_state = 0;
setup () void
De serie.comenzar (115200);
PinMode (push_button, entrada); /*GPIO 15 establecido como entrada*/
PinMode (LED_PIN, salida); /*GPIO 14 establecido como salida*/

bucle void ()
Button_state = digitalread (push_button); /*Compruebe el botón de empuje*/
De serie.println (Button_state);
if (button_state == high) /*if condición para verificar el estado del botón* /
DigitalWrite (LED_PIN, High); /*Estado alto LED en*/
demás
DigitalWrite (LED_PIN, Low); /*Else lideró*/


Código iniciado definiendo Pins GPIO para LED y BoTment Button. Después de ese LED GPIO se declara como salida, mientras que el botón PUSH GPIO se establece como entrada.

Al final el estado de botón Push, se verifica el estado de la condición IF. El estado del botón Push también se imprime en el monitor de serie utilizando De serie.println (Button_state).

Si la entrada del botón Push es un LED alto, se encenderá más, permanecerá apagado.

7: salida

Al principio, podemos ver que el LED está apagado.


Ahora presione el botón Push, se enviará una señal alta a ESP32 GPIO 15 y el LED se encenderá.


La misma salida también se puede ver en el monitor de serie Arduino.

Conclusión

ESP32 tiene múltiples pines GPIO que pueden leer datos digitales de sensores como botones PUSH. El uso del botón Push de la función de lectura digital se puede interactuar fácilmente con ESP32 para controlar diferentes dispositivos. El uso de este artículo una vez puede interactuar el botón Push con cualquier pin GPIO de ESP32.