Entrées Analogiques
Les entrées analogiques sont aux nombres de 6 et sont notées A0, A1, A2, ..., A6. Un truc sympathique avec Arduino, la facilité à prendre en main. Et ça se voit une fois de plus avec l'utilisation des Convertisseur Analogique Numérique. En effet, une seule nouvelle fonction à retenir pour ce TP : analogRead()
Cette fonction va nous permettre de lire la valeur appliquée sur une entrée analogique de l'Arduino. Elle prend un argument et retourne la valeur lue :
L'argument est le numéro de l'entrée analogique à lire
La valeur retournée int sera le résultat de la conversion analogique / numérique
Les 6 entrées analogiques sont numérotées tout comme les entrées/sorties logiques. Donc, pour lire la valeur de la broche analogique numéro 4, on fera : valeur = analogRead(4);
Ne confondez pas les entrées analogiques et les entrées numériques. Elles ont en effet le même numéro pour certaines. La différenciation se fait au niveau des instructions.
Comme maintenant vous êtes des développer organisés, intelligents et attentifs aux consignes, vous entretiendrez sans faute mnémoniques et vous nommerez les variables proprement.
Méthode : Objectif du TP
Réaliser le montage votre programme devra être capable d'afficher sur le moniteur série la valeur numérique obtenue après la conversion.
Mesurer à l'aide d'un multimètre la valeur analogique de la tension appliquée sur l'entrée A0 pour chaque valeur numérique.
Établir dans un logiciel de tableur la correspondance entre la tension analogique et la valeur numérique
Déterminer la résolution du convertisseur (1 bit = combien de Volt )
const int potar = 0; // Potar sur la broche 0
int valeurLue;
float tensionApp;
void setup()
{
//Démarage de la liaison série
Serial.begin(115200);
}
void loop()
{
//Lecture et conversion en nombre binaire de la tension en sortie du potentiomètre
valeurLue = analogRead(potar);
//on traduit la valeur binaire en tension pour affichage
tensionApp = valeurLue * 5.0 / 1023;
//on affiche la valeur lue sur le moniteur série
Serial.print("Valeur Lue = ");
Serial.println(valeurLue);
//on affiche la tension recalculée
Serial.print("Tension = ");
Serial.print(tensionApp,2);
Serial.println(" V");
//on saute une ligne entre deux affichages
Serial.println();
//on attend une seconde et on recommence
delay(1000);
}
Dans le tableur, expliquer les fonctionnement du programme en décrivant ce que réalise les instructions :
Serialprint()
Serialprintln()
tensionApp = valeurLue * 5.0 / 1023