Ingresar datos analógicos a ESP32 con un potenciómetro
Ahora que sabemos encender un led con ESP32 vamos a encender el ESP32 con un potenciómetro y de una forma parecida al ESP32 PWM led aumentaremos y disminuiremos la intensidad del led.
Diagrama de ESP32 con un potenciómetro.
Para entender más a detalle vamos a crear un código que encienda el led con una intensidad de 0 y que aumente poco a poco 256 usando el potenciómetro. Aclaremos que el potenciómetro nos va a entregar una entrada de 0 a 4095, pero como vimos en el tutorial ESP32 PWM led los leds en PWM reciben un valor desde 0 a 256, así que vamos a tener que dividir 4095/16 para convertirlo de 4095 a 256.
Requerimientos
- ESP32
- Un led (Cualquier color)
- Resistencia de 330 ohms
- Potenciómetro.
- Cables
Conexiones
- Conectaremos el pin D2 al Ánodo del led.
- Conectamos una resistencia de 330 Ohms a GND del ESP32 y después al Cátodo del led.
- Conectamos tierra (GND) a GND del potenciómetro
- VCC del potenciómetro a 3V3 del ESP32
- SIG del potenciómetro a D34.
El diagrama de conexión terminará así:

Código
// Declaramos la intensidad del brillo
int BRILLO = 0;
// Pin de entrada del potenciometro
int pinPot=34;
// Pin de salida al led
int pinLed=2;
//Características del PWM
const int frecuencia = 1000;
const int canal = 0;
const int resolucion = 10;
void setup()
{
Serial.begin(9600);
//Inicializamos las características del pwm
ledcSetup(canal, frecuencia, resolucion);
// Definimos que el pin 2 sacara el voltaje
ledcAttachPin(pinLed, OUTPUT);
delay(1000);
}
void loop()
{
//Obtenemos la señal del potenciometro
BRILLO = analogRead(pinPot);
//Mostramos la señal del potenciometro
Serial.println(BRILLO);
//desde 0 a 4095
//Dividimos la señal en entre 16
BRILLO = (BRILLO / 16.2);
Serial.println(BRILLO);
//Encendemos el led
//ledcWrite(pinLed, BRILLO);
analogWrite(pinLed, BRILLO);
delay(1000);
}
Ahora veremos como se mira simulando en wokwi.com

Podemos descargar el código y ver la simulación aquí: https://wokwi.com/projects/342135417529696851
<<Anterior tutorial Siguiente tutorial >>