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 >>