/*
Control de intensidad de LED con Potenciómetro (ESP32)
Lectura analógica: 0 - 4095 (12 bits)
Salida PWM: 0 - 255 (8 bits)
*/
// Definición de pines
const int potPin = 34; // Pin donde conectas el centro del potenciómetro
const int ledPin = 2; // Pin del LED (GPIO 2 suele ser el LED interno en muchas placas)
void setup() {
// Inicia la comunicación serial a 115200 baudios
Serial.begin(115200);
// Configura el pin del LED como salida
pinMode(ledPin, OUTPUT);
Serial.println("Sistema iniciado. Gira el potenciómetro...");
}
void loop() {
// Lee el valor del potenciómetro (rango 0 a 4095)
int sensor = analogRead(potPin);
// Mapea el valor de 12 bits (0-4095) a 8 bits (0-255) para el PWM
int brillo = map(sensor, 0, 4095, 0, 255);
// Escribe el valor de brillo en el pin del LED
analogWrite(ledPin, brillo);
// Imprime los valores en el Monitor Serial para monitorear
Serial.print("Valor ADC: ");
Serial.print(sensor);
Serial.print(" => Brillo PWM: ");
Serial.println(brillo);
// Pequeña pausa de 50ms para que la lectura sea fluida pero estable
delay(50);
}Loading
esp32-devkit-c-v4
esp32-devkit-c-v4