Afficheur 7 segments piloté par Arduino

Auteur avatarTess | Dernière modification 15/10/2019 par Pierreb

Afficheur 7 segments piloté par Arduino Conception.png
L’expérience consiste à allumer l'afficheur 7 segments. Nous allons afficher les chiffres de 0 à 9 un par un par l'intermédiaire de la carte Arduino Uno.
Licence : Attribution (CC-BY)

Étape 1 - Télécharger

  • Télécharger et installer le logiciel Arduino.

Étape 2 - Placer

  • Placer l'afficheur 7 segments sur la plaque.

Étape 3 - Brancher

  • Brancher les deux fils noirs dans la masse GND.

Étape 4 - Brancher

  • Brancher les 8 fils dans les pins (de 2 à 8) de l'Arduino et les lier avec la plaque Adec.

Étape 5 - Brancher

  • Brancher la résistance dans la plaque.

Étape 6 - Préparer

  • Préparer le code du fonctionnement de la carte Arduino.

Étape 7 - Compiler

Compiler le code et le charger vers la carte.

Comment ça marche ?

Observations : que voit-on ?

À l’exécution du programme, l'afficheur 7 segments affiche les chiffres de 0 à 9 successivement.

Code

void setup() {

 // initialiser le digital pin comme une sortie

pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); pinMode(led5, OUTPUT); pinMode(led6, OUTPUT); pinMode(led7, OUTPUT); pinMode(led8, OUTPUT); } void loop() {

//Compteur de 0 à 9 
//************ 0 *************
 digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, HIGH);   // fixe la led comme allumée
 digitalWrite(led4, LOW);   // fixe la led comme éteinte
 digitalWrite(led5, HIGH);   // fixe la led comme allumée
 digitalWrite(led6, HIGH);   // fixe la led comme allumée
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8, HIGH);   // fixe la led comme allumée 
 delay(1000);              // attendre 1 sec
  //************ 1 *************
   digitalWrite(led1, HIGH);   // fixe la led comme  éteinte
 digitalWrite(led2, LOW);   // fixe la led comme  éteinte
 digitalWrite(led3, LOW);   // fixe la led comme éteinte
 digitalWrite(led4, LOW);   // fixe la led comme éteinte
 digitalWrite(led5, LOW);   // fixe la led comme éteinte
 digitalWrite(led6, LOW);   // fixe la led comme éteinte
 digitalWrite(led7, HIGH);   // fixe la led comme allumé
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
  //************ 2 *************
    digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, LOW);   // fixe la led comme éteinte
 digitalWrite(led4, HIGH);   // fixe la led comme allumé
 digitalWrite(led5, HIGH);   // fixe la led comme allumé
 digitalWrite(led6, HIGH);   // fixe la led comme allumé
 digitalWrite(led7, LOW);   // fixe la led comme éteinte
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
 //************ 3 *************
     digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, LOW);   // fixe la led comme éteinte
 digitalWrite(led4, HIGH);   // fixe la led comme allumé
 digitalWrite(led5, LOW);   // fixe la led comme éteinte
 digitalWrite(led6, HIGH);   // fixe la led comme allumé
 digitalWrite(led7, HIGH);   // fixe la led comme allumé
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
 //***** 4 *************
          digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, LOW);   // fixe la led comme éteinte
 digitalWrite(led3, HIGH);   // fixe la led comme allumé
 digitalWrite(led4, HIGH);   // fixe la led comme allumé
 digitalWrite(led5, LOW);   // fixe la led comme éteinte
 digitalWrite(led6, LOW);   // fixe la led comme éteinte
 digitalWrite(led7, HIGH);   // fixe la led comme allumé
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  

delay(1000);

 //************ 5 *************
       digitalWrite(led1, LOW);   // fixe la led comme éteinte  
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, HIGH);   // fixe la led comme éteinte
 digitalWrite(led4, HIGH);   // fixe la led comme éteinte
 digitalWrite(led5, LOW);   // fixe la led comme éteinte
 digitalWrite(led6, HIGH);   // fixe la led comme allumée
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
  //************ 6 *************
   digitalWrite(led1, LOW);   // fixe la led comme éteinte
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, HIGH);   // fixe la led comme allumée
 digitalWrite(led4, HIGH);   // fixe la led comme allumée
 digitalWrite(led5, HIGH);   // fixe la led comme allumée
 digitalWrite(led6, HIGH);   // fixe la led comme allumée
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
  //************ 7 *************
    digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, LOW);   // fixe la led comme éteinte
 digitalWrite(led4,LOW);   // fixe la led comme éteinte
 digitalWrite(led5,LOW);   // fixe la led comme éteinte
 digitalWrite(led6, LOW);   // fixe la led comme éteinte
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
 //************ 8 *************
     digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, HIGH);   // fixe la led comme allumée
 digitalWrite(led4, HIGH);   // fixe la led comme allumée
 digitalWrite(led5, HIGH);   // fixe la led comme allumée
 digitalWrite(led6, HIGH);   // fixe la led comme allumée
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8, LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec
 //************ 9 *************
     digitalWrite(led1, HIGH);   // fixe la led comme allumée
 digitalWrite(led2, HIGH);   // fixe la led comme allumée
 digitalWrite(led3, HIGH);   // fixe la led comme allumée
 digitalWrite(led4, HIGH);   // fixe la led comme allumée
 digitalWrite(led5,  LOW);   // fixe la led comme éteinte
 digitalWrite(led6, HIGH);   // fixe la led comme allumée
 digitalWrite(led7, HIGH);   // fixe la led comme allumée
 digitalWrite(led8,  LOW);   // fixe la led comme éteinte  
 delay(1000);              // attendre 1 sec

}

Explications

De manière simple

On a demandé à l'ordinateur de réaliser un compteur via la carte Arduino. Pour cela, on a écrit un code qui gère la carte Arduino afin d'afficher les nombres de 0 à 9 successivement.

Questions sans réponses

Peut-on afficher des chiffres en tapant sur le clavier, sans l'exécution pas à pas de l'afficheur 7 segments ?

Plus d'explications

Allons plus loin dans l'explication

On a codé l'Arduino à l'aide du langage C afin qu'il puisse afficher les chiffres de 0 à 9. Le code source contient des fonctions « digitalWrite » qui permettent d'allumer des Leds précises selon des paramètres en entrée. La fonction ' digitalWrite ' envoie à chaque exécution le code approprié à chaque led précise pour l'allumer.

Applications : dans la vie de tous les jours

.L’intérêt de ce projet est de savoir comment les compteurs, les horloges et les chronomètres sont réalisés.

Vous aimerez aussi

Vous pouvez retrouver une multitude d'expériences sur l'arduino sur [http://arduino.cc/forum/index.php/topic,67634.0.html


Dernière modification 15/10/2019 par user:Pierreb. Draft