🛠 Lire un capteur analogique sur A0-A7

Arduino Nano Every · debutant · Schéma : IMG-nano-every-debutant-3-nanoevery-capteur-analogique.svg — Potentiomètre relié au 5 V, à la broche A0 et à GND sur une Nano Every, avec l'échelle ADC 10 bits (0-1023) annotée

Objectifs

Lire une tension analogique avec l'ADC 10 bits de l'ATmega4809. La Nano Every expose 8 entrées analogiques A0 à A7 sur son connecteur (la puce en expose 14 canaux au total), converties entre 0 et la tension de référence (5 V par défaut).

Matériel

Code complet

// Lecture du potentiomètre sur A0 + allumage seuil sur LED 13
const uint8_t CAPTEUR = A0;
const uint16_t SEUIL = 512;
uint32_t derniereImpression = 0;

void setup {
  pinMode(LED_BUILTIN, OUTPUT);
  Serial.begin(9600);
}

void loop {
  uint16_t brut = analogRead(CAPTEUR);          // 0..1023
  float tension = brut * (5.0 / 1023.0);        // 0.00..5.00 V

  if (millis - derniereImpression >= 100) {   // 10 Hz
    derniereImpression = millis;
    Serial.print("brut="); Serial.print(brut);
    Serial.print("  U="); Serial.print(tension);
    Serial.println(" V");
  }
  digitalWrite(LED_BUILTIN, brut > SEUIL ? HIGH : LOW);
}

Vérification attendue

Potentiomètre : curseur vers GND → lecture proche de 0 ; vers 5 V → proche de 1023. La LED 13 s'allume au-dessus de la moitié de la course. Le moniteur série affiche brut et tension à 10 Hz.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels