/*
* This ESP32 code is created by esp32io.com
*
* This ESP32 code is released in the public domain
*
* For more detail (instruction and wiring diagram), visit https://esp32io.com/tutorials/esp32-potentiometer-triggers-led
*/
#define POTENTIOMETER_PIN 34 // ESP32 pin GPIO36 (ADC0) connected to Potentiometer pin
#define LED_PIN 21 // ESP32 pin GPIO21 connected to LED's pin
#define VOLTAGE_THRESHOLD 2.5 // Voltages
void setup() {
pinMode(LED_PIN, OUTPUT); // set ESP32 pin to output mode
}
void loop() {
int analogValue = analogRead(POTENTIOMETER_PIN); // read the input on analog pin
float voltage = floatMap(analogValue, 0, 1023, 0, 5); // Rescale to potentiometer's voltage
if (voltage > VOLTAGE_THRESHOLD)
digitalWrite(LED_PIN, HIGH); // turn on LED
else
digitalWrite(LED_PIN, LOW); // turn off LED
}
float floatMap(float x, float in_min, float in_max, float out_min, float out_max) {
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}