🛠 Lire un capteur analogique avec l’ADC 10 bits

Arduino Mega 2560 (Rev3) · debutant · Schéma : IMG-mega-2560-debutant-3-capteur-analogique.svg — potentiomètre 10 kΩ monté en pont diviseur entre 5 V et la masse, curseur vers l’entrée analogique A0 de l’Arduino Mega 2560

Objetivos

Utilizar el convertidor analógico-digital del ATmega2560: la Mega 2560 posee 16 entradas analógicas (A0 a A15) con una resolución de 10 bits, es decir, valores enteros de 0 a 1023 para una tensión de referencia por defecto de 5 V. Aprenderás a leer un sensor, convertir el valor en tensión y comprender el papel del pin AREF.

Material

Conecta los dos extremos del potenciómetro a 5 V y GND, y el cursor (patilla central) a A0. La referencia analógica se puede modificar mediante el pin AREF y la función analogReference — nunca apliques una tensión externa en AREF sin leer previamente la documentación.

Código completo

// Lecture ADC 10 bits — Arduino Mega 2560
const uint8_t CAPTEUR = A0;   // 16 entrées : A0..A15

uint32_t t0 = 0;

void setup {
  Serial.begin(115200);
}

void loop {
  if (millis - t0 >= 100) {          // 10 affichages / s
    t0 = millis;
    uint16_t brut = analogRead(CAPTEUR);        // 0..1023
    float tension = brut * (5.0 / 1023.0);      // 0..5 V
    Serial.print(F("brut=")); Serial.print(brut);
    Serial.print(F("  tension=")); Serial.print(tension, 2);
    Serial.println(F(" V"));
  }
}

Verificación esperada

Al girar el potenciómetro, el valor bruto pasa de 0 a 1023 y la tensión de 0,00 a 5,00 V en el monitor serie a 115200 baudios. Una medición con un multímetro entre A0 y GND debe confirmar la tensión mostrada (con la precisión del ADC de 10 bits: 5 V / 1024 ≈ 4,9 mV por paso).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales