esp32-gpio

Qué son y cómo usar los GPIO en el ESP32

Los pines GPIO (General Purpose Input/Output), son puertos digitales que pueden ser configurados tanto como entradas como salidas en un microcontrolador.

Las entradas son utilizadas para leer señales del exterior, como sensores, interruptores o cualquier dispositivo que genere una señal eléctrica.

Las salidas, por otro lado, permiten al microcontrolador controlar dispositivos como LEDs, motores y otros componentes.

Uso de las entradas y salidas digitales en el ESP32

En el entorno de Arduino para ESP32, el manejo de los pines GPIO es bastante sencillo. Básicamente, es exactamente igual al que tendríamos en el caso de un Arduino “normal”.

Para configurar un pin como entrada o salida, se utiliza la función

pinMode(pin, mode)

Donde

  • pin es el número del pin que se quiere configurar
  • mode puede ser
    • INPUT para configurarlo como entrada
    • OUTPUT para configurarlo como salida.

Modos de los pines GPIO

Además de los modos INPUT y OUTPUT, los pines GPIO en el ESP32 también pueden configurarse en otros modos que permiten funcionalidades más avanzadas. Algunos de estos modos incluyen:

  • INPUT_PULLUP: Configura el pin como entrada con resistencia pull-up interna activada. Esto es útil para detectar cambios en interruptores o botones.
  • INPUT_PULLDOWN: Similar al anterior, pero con resistencia pull-down interna activada.
  • OUTPUT_OD: Configura el pin como salida de drenaje abierto, que es útil cuando se trabaja con circuitos externos.

Resistencias internas de pull-up y pull-down

Los pines GPIO en el ESP32 tienen resistencias pull-up y pull-down internas que pueden activarse según sea necesario.

Estas resistencias son útiles cuando se trabaja con entradas, como interruptores o botones, ya que ayudan a establecer un estado lógico predefinido cuando no hay una señal externa.

Ejemplos de código