scan-16-analogiques.ino

Arduino Mega 2560 (Rev3) · Fichier : scan-16-analogiques.ino · Langage : Arduino · Usage : Acquitter les 16 entrées analogiques en un seul tour de boucle

La Mega offre 16 entrées 10 bits : ce batch read les parcours toutes les 500 ms et envoie une ligne de valeurs au traceur série. Les broches non connectées flottent — brancher une résistance vers GND stabilise la lecture.

Matériel requis

Une Arduino Mega 2560 (ATmega2560, 16 MHz, 5 V) : 54 E/S numériques, 15 PWM, 16 entrées analogiques, 4 UART matériels. Optionnel : capteurs ou potentiomètres sur A0-A15.

Branchement

Chaque capteur entre 5 V/GND et sa broche Axx ; masses communes.

Fonctionnement

A0 + p itère sur les 16 canaux du multiplexeur ADC ; une conversion suit l'autre, d'où la ligne complète en quelques millisecondes. Dans l'Arduino IDE, choisissez « Arduino Mega 2560 » et le port, puis Téléverser. PWM sur 2-13 et 44-46 ; UART1=18/19, UART2=16/17, UART3=14/15 ; SPI sur 50-53.

Pour aller plus loin

Poussez le concept avec un multiplexeur CD74HC4067 pour atteindre 16 canaux supplémentaires.

scan-16-analogiques.ino

// Acquittement des 16 entrees analogiques (A0..A15).
unsigned long precedent = 0;

void setup() {
  Serial.begin(115200);
}

void loop() {
  if (millis() - precedent >= 500) {
    precedent = millis();
    for (int p = 0; p < 16; p++) {
      Serial.print(analogRead(A0 + p)); // 0..1023
      Serial.print(p == 15 ? '\n' : '\t');
    }
  }
}

← Retour à la fiche