[Apuntes de estudio más completos de ESP32 (básico) - 5. Entrada y salida digital ESP32 (IDE de Arduino)]

Acerca de este tutorial:

Conceptos básicos de ESP32                                

1. Introducción a ESP32                                                                

2. Entorno de desarrollo integrado ESP32 Arduino

3. Código VS y PlatformIO

4. pines ESP32

5. Entrada y salida ESP32 ☑

6. Modulación de ancho de pulso ESP32

7. Entrada analógica ESP32

8. Temporizador de interrupción ESP32

9 .ESP32 sueño profundo

Protocolo ESP32

servidor web ESP32

ESP32 LoRa

ESP32 BLE

ESP32 BLE Cliente-Servidor

Bluetooth ESP32

ESP32 MQTT

ESP32 ESP-AHORA

Wifi ESP32

ESP32 WebSocket

ESP32 ESP-MALLA

buzón ESP32

SMS ESP32

ESP32 HTTP obtener POST

HTTP GET Web API

API web HTTP POST

 Artículos del servidor ESP32

¡Sigue actualizando, sigue a los bloggers y no te pierdas! ! !

 Módulo sensor ESP32

¡Sigue actualizando, sigue a los bloggers y no te pierdas! ! !

Combate definitivo ESP32

Más de 100 proyectos prácticos ESP32, ¡presta atención! ! !

En esta guía de inicio, aprenderá a leer entradas digitales como interruptores de botón y controlar salidas digitales como LED utilizando el ESP32 con Arduino IDE.

requisitos previos

Programaremos el ESP32 utilizando el IDE de Arduino. Así que asegúrese de tener instalado el complemento de la placa ESP32 antes de continuar:

Salida digital de control ESP32

Primero, debe configurar el GPIO que desea controlar como una salida.Use la función pinmode() de la siguiente manera:

pinMode(GPIO, SALIDA);

 Para controlar una salida digital, basta con utilizar la función digital write() , que acepta como parámetros un GPIO (número int) y un estado, ya sea alto o bajo .

escritura digital (GPIO, ESTADO);

 Todos los GPIO se pueden usar como salidas, excepto los GPIO 6 a 11 (conectados a la memoria flash SPI integrada) y los GPIO 34, 35, 36 y 39 (GPIO solo de entrada);

Más información sobre ESP32 GPIO: Guía de referencia de ESP32 GPIO

ESP32 leer entrada digital

Primero, configure el GPIO para que se lea como una entrada , usando la función pinmode() de la siguiente manera:

pinMode(GPIO, ENTRADA);

 Para leer una entrada digital, como un botón, puede usar la función digitalread() , que acepta como argumento el GPIO (entero) al que se refiere.

lectura digital (GPIO);

Todos los GPIO ESP32 se pueden usar como entradas, excepto GPIO 6 a 11 (conectado al flash SPI integrado).

 Más información sobre ESP32 GPIO: Guía de referencia de ESP32 GPIO

Ejemplo de ingeniería

Para mostrarle cómo usar la entrada digital y la salida digital, crearemos un proyecto de ejemplo simple con un botón y un LED. Leeremos el estado del botón y encenderemos el LED en consecuencia como se muestra en la imagen a continuación.

diagrama esquemático

Antes de continuar, deberá ensamblar un circuito con un LED y un botón. Conectamos el LED a GPIO 5 y el botón a GPIO 4 .

partes requeridas

Aquí está la lista de piezas necesarias para construir el circuito:

ESP32 (lea las mejores placas de desarrollo ESP32)
5 mm LED
330 ohm
botón de resistencia
10k ohm resistencia
Breadboard
Jumper cables

 

el código

Copie el siguiente código en su IDE de Arduino.

// set pin numbers
const int buttonPin = 4;  // the number of the pushbutton pin
const int ledPin =  5;    // the number of the LED pin

// variable for storing the pushbutton status 
int buttonState = 0;

void setup() {
  Serial.begin(115200);  
  // initialize the pushbutton pin as an input
  pinMode(buttonPin, INPUT);
  // initialize the LED pin as an output
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // read the state of the pushbutton value
  buttonState = digitalRead(buttonPin);
  Serial.println(buttonState);
  // check if the pushbutton is pressed.
  // if it is, the buttonState is HIGH
  if (buttonState == HIGH) {
    // turn LED on
    digitalWrite(ledPin, HIGH);
  } else {
    // turn LED off
    digitalWrite(ledPin, LOW);
  }
}

Código detallado

En las siguientes dos líneas, crea variables para asignar pines:

const int buttonPin = 4;
const int ledPin = 5;

El botón está conectado a GPIO 4 y el LED está conectado a GPIO 5. Al usar Arduino IDE con ESP32, 4 corresponde a GPIO 4 y 5 corresponde a GPIO 5 .

A continuación, crea una variable para mantener el estado del botón. Por defecto es 0 (no presionado).

int buttonState = 0;

Dentro de steup() , inicializas el botón como entrada y el LED como salida . Para hacer esto, usas pinmode() para aceptar la función del pin al que te refieres y el modo: entrada o salida .

pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);

Inside loop() es donde lee el estado del botón y configura el LED en consecuencia.

En la siguiente línea, lee el estado del botón y lo guarda en el estado del botón cambiable. Como hemos visto antes, usas la función number read() .

buttonState = digitalRead(buttonPin);

La siguiente instrucción if verifica si el estado del botón es HIGH .Si es así, utiliza la función digitalWrite() que acepta como parámetros LEDPin y el estado HIGH .

if (buttonState == HIGH) {
  digitalWrite(ledPin, HIGH);
}

Si el estado del botón no es alto , apaga el LED. Simplemente establezca el número bajo como el segundo argumento de la función write() .

else {
  digitalWrite(ledPin, LOW);
}

cargar código

Antes de hacer clic en el botón de carga, vaya a  Herramientas  >  Tableros y seleccione el tablero que está utilizando.

Vaya a Herramientas > Puertos y seleccione el puerto COM al que está conectado el ESP32. Luego, presione el botón de carga y espere el mensaje " carga completa ".

 Si ve muchos puntos (…__…__) y el mensaje "Error al conectarse a ESP32: se agotó el tiempo de espera del encabezado del paquete" en la ventana de depuración, significa que debe presionar el botón de ARRANQUE incorporado de ESP32 después de que comiencen a aparecer los puntos. .

demostración

Después de cargar el código, pruebe su circuito. Cuando presiona el botón, su LED debe encenderse:

Cierra cuando lo sueltes:

 Resumir

        Con esta guía de introducción, aprendió a leer entradas digitales y controlar salidas digitales con el ESP32 utilizando el IDE de Arduino.

Supongo que te gusta

Origin blog.csdn.net/m0_46509684/article/details/129108845
Recomendado
Clasificación