🛠 Première entrée analogique sur ADC1

ESP32 (original, clase ESP32-WROOM-32) · debutant · Schéma : IMG-esp32-debutant-3-entree-analogique-adc1.svg — Potentiomètre relié à GPIO34 (ADC1) sur ESP32, tension convertie en valeur 0-4095 affichée en console

Objetivos

Leer una tensión con el convertidor analógico-digital del ESP32. Utilizaremos deliberadamente un canal del ADC1 (GPIO32 a GPIO39): el ADC2, por su parte, es inutilizable en cuanto el Wi-Fi está activo — una trampa clásica que detallaremos en el tutorial avanzado correspondiente. También descubrirás la restricción de GPIO34-39: estos pines son entradas puras, nunca salidas.

Material

Código completo

const uint8_t POT_PIN = 34;   // ADC1_CH6, entree seule

void setup {
  Serial.begin(115200);
  analogReadResolution(12);            // 0..4095
  analogSetPinAttenuation(POT_PIN, ADC_11db); // plage ~0 a 3,3 V
  analogRead(POT_PIN);                 // 1er echantillon ignore
}

void loop {
  uint32_t brut = analogRead(POT_PIN);
  float mv = brut * 3300.0f / 4095.0f;
  Serial.printf("ADC1 GPIO34 : %u -> %.0f mV\n", brut, mv);
  delay(100);
}

Verificación esperada

Al girar el potenciómetro, la consola muestra un valor continuo de 0 a 4095 y la tensión correspondiente de 0 a aproximadamente 3300 mV. En reposo (dedo cerca del cursor), el valor puede fluctuar algunas unidades: es el ruido normal de un ADC de 12 bits sin filtro.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales