|
|
Ligne 21 : |
Ligne 21 : |
| | | |
| ==='''La manipulation'''=== | | ==='''La manipulation'''=== |
- |
| |
- | <u>La manipulation</u>
| |
- |
| |
- | * Télécharger et installer le logiciel Arduino.
| |
- | * Placer l'afficheur 7 segments sur la plaque.
| |
- | * Brancher les deux fils noirs dans la masse GND.
| |
- | * Brancher les 8 fils dans les pins (de 2 à 8) de l'Arduino et les lier avec la plaque Adec.
| |
- | * Brancher la résistance dans la plaque.
| |
- | * Préparer le code du fonctionnement de la carte Arduino.
| |
- | * Compiler le code et le charger vers la carte.
| |
- |
| |
- | [[Fichier:Conception.png]]
| |
- |
| |
- | <u>Que voit-on ?</u>
| |
- |
| |
- | À l’exécution du programme, l'afficheur 7 segments affiche les chiffres de 0 à 9 successivement.
| |
- |
| |
- | <u>Code</u>
| |
- |
| |
- | <pre>
| |
- |
| |
- |
| |
- |
| |
- |
| |
- |
| |
- | 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
| |
- |
| |
- | }
| |
- |
| |
- |
| |
- |
| |
- | </pre>
| |
| | | |
| == '''Explications''' == | | == '''Explications''' == |
L’expérience consiste à mesurer la longueur de quelque chose, comme un mur, ou bien la distance qui sépare quelqu'un de l'Arduino.
La plage à mesurer doit être comprise entre 2 centimètres et 3 mètres au maximum.
La distance est affichée sur un moniteur.
Une LED clignote de plus en plus rapidement au fur et à mesure que la l'objet se rapproche.
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.
Peut-on afficher des chiffres en tapant sur le clavier, sans l'exécution pas à pas de l'afficheur 7 segments ?
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.
D'autres expériences utilisant l'Arduino sont disponible dans ce wiki. Vous pouvez les retrouver ici :
Catégorie : Arduino.
L’intérêt de ce projet est de savoir comment les compteurs, les horloges et les chronomètres sont réalisés.