Vous êtes sur la page 1sur 26

2015

Activité initiation Arduino

0
SOMMAIRE
TABLE DES ILLUSTRATIONS (FIGURES) .............................................................................................................. 3
INTRODUCTION ................................................................................................................................................ 4
COMPOSITION DE LA PLATEFORME ARDUINO................................................................................................................. 4
UTILISATION DE LA BREADBOARD ................................................................................................................................ 6
LISTE DU MATERIEL FOURNI KIT INITIATION ................................................................................................................... 7
LOGICIELS NECESSAIRES ............................................................................................................................................. 8
DIRECTIVES POUR CHAQUE EXERCICE............................................................................................................................ 8
1. EXERCICE 1 - BLINKY LED .......................................................................................................................... 9
1.1. OBJECTIFS ................................................................................................................................................. 9
1.2. SCHEMA DE CABLAGE .................................................................................................................................. 9
1.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................... 9
1.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 10
1.5. LE PROGRAMME ....................................................................................................................................... 10
1.6. LES ECUEILS PREVISIBLES............................................................................................................................. 10
2. EXERCICE 2 - BLINKY LED AND DIALOG PC .............................................................................................. 11
2.1. OBJECTIFS ............................................................................................................................................... 11
2.2. SCHEMA DE CABLAGE ................................................................................................................................ 11
2.3. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 12
2.4. LE PROGRAMME ....................................................................................................................................... 12
2.5. TRAVAIL A FAIRE EN SUPPLEMENT ................................................................................................................ 12
2.6. LES ECUEILS PREVISIBLES............................................................................................................................. 12
3. EXERCICE 3 – DETECTION D’UN NIVEAU DE SEUIL DE TENSION ANALOGIQUE ........................................ 13
3.1. OBJECTIFS ............................................................................................................................................... 13
3.2. SCHEMA DE CABLAGE ................................................................................................................................ 13
3.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 14
3.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 14
3.5. LE PROGRAMME ....................................................................................................................................... 15
3.6. LES ECUEILS PREVISIBLES............................................................................................................................. 15
3.7. TRAVAIL A FAIRE EN SUPPLEMENT ................................................................................................................ 15
4. EXERCICE 4 – EFFET DE FONDU D’UNE LED ............................................................................................. 16
4.1. OBJECTIFS ............................................................................................................................................... 16
4.2. SCHEMA DE CABLAGE ................................................................................................................................ 16
4.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 17
4.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 18
4.5. LE PROGRAMME ....................................................................................................................................... 18
4.6. LES ECUEILS PREVISIBLES............................................................................................................................. 18
5. EXERCICE 5 – VARIATEUR DE LUMINOSITE D’UNE LED ........................................................................... 19
5.1. OBJECTIFS ............................................................................................................................................... 19
5.2. CONSEILS ................................................................................................................................................ 19
6. EXERCICE 6 – CAPTEUR DE TEMPERATURE ............................................................................................. 20
6.1. OBJECTIFS ............................................................................................................................................... 20
6.2. SCHEMA DE CABLAGE ................................................................................................................................ 20
6.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 21

1
6.4. LE PROGRAMME A REALISER ........................................................................................................................ 21
6.5. CONSEILS ................................................................................................................................................ 21
7. EXERCICE 7 – AFFICHEUR 7 SEGMENTS ................................................................................................... 22
7.1. OBJECTIFS ............................................................................................................................................... 22
7.2. SCHEMA DE CABLAGE ................................................................................................................................ 22
7.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 22
7.4. TRAVAIL A REALISER .................................................................................................................................. 24
8. EXERCICE 8 – COMPTEUR ....................................................................................................................... 25

2
Table des illustrations (Figures)

Figure 1 Arduino Uno .............................................................................................................................. 4


Figure 2 Environnement de développement Arduino............................................................................. 5
Figure 3 Support breadBoard pour le câblage de schéma électrique ..................................................... 6
Figure 4 Liste du matériel fourni Kit Initiation ........................................................................................ 7
Figure 5 Le poste de travail principal ...................................................................................................... 8
Figure 6 Schéma de câblage Exercice 1 ................................................................................................... 9
Figure 7 Technologie – Exercice 1 ........................................................................................................... 9
Figure 8 Exemple de programme pour l’Exercice 1............................................................................... 10
Figure 9 Schéma de câblage Exercice 2 ................................................................................................. 11
Figure 10 Exemple de programme pour l’Exercice 2............................................................................. 12
Figure 11 Schéma de câblage Exercice 3 ............................................................................................... 13
Figure 12 Technologie Potentiomètre – Exercice 3............................................................................... 14
Figure 13 Exemple de programme pour l’Exercice 3............................................................................. 15
Figure 14 Schéma de câblage Exercice 4 ............................................................................................... 16
Figure 15 Technologie Signal PWM – Exercice 4 ................................................................................... 17
Figure 16 Exemple de programme pour l’Exercice 4............................................................................. 18
Figure 17 Les objectifs de l’exercice 5 ................................................................................................... 19
Figure 18 Schéma de câblage Exercice 6 ............................................................................................... 20
Figure 19 Technologie – Exercice 6 ....................................................................................................... 21
Figure 20 Schéma de câblage Exercice 7 ............................................................................................... 22
Figure 21 Ecriture des caractères sur un afficheur 7 segments ............................................................ 22
Figure 22 Exemple d’afficheur 7 segments en cathode commune ....................................................... 23
Figure 23 Schéma du 74HC4511 et de sa table de vérité...................................................................... 23

3
Introduction
Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware
and software. It's intended for artists, designers, hobbyists, and anyone interested in creating
interactive objects or environments.

Figure 1 Arduino Uno

Arduino can sense the environment by receiving input from a variety of sensors and can affect its
surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is
programmed using the Arduino programming language (based on Wiring) and the Arduino
development environment (based on Processing). Arduino projects can be stand-alone or they can
communicate with software running on a computer (e.g. Flash, Processing, MaxMSP). The boards can
be built by hand or purchased preassembled; the software can be downloaded for free. The
hardware reference designs (CAD files) are available under an open-source license, you are free to
adapt them to your needs. Arduino received an Honorary Mention in the Digital Communities section
of the 2006 Ars Electronica Prix. The Arduino team is: Massimo Banzi, David Cuartielles, Tom Igoe,
Gianluca Martino, and David Mellis

©First page of website arduino.cc

Composition de la plateforme Arduino

La Carte microcontrôleur UNO:


Cette carte est constituée d’un microcontrôleur Atmega328 (32K de mémoire programme), et d’une
interface d’entrée sortie directement utilisable. Elle comporte tout ce qui est nécessaire à la prise en
charge du microcontrôleur. Il vous suffit de la connecter à un ordinateur à l'aide d'un cordon USB
et/ou de l'alimenter avec un adaptateur c.a./c.c. ou une batterie. Pour le TP la carte sera alimentée
via le port USB.

Caractéristiques :
 ATmega328 16 MHz, mémoire Flash de 32 Ko, RAM de 2 Ko, EEPROM de 1 K
 14 x GPIO (dont 6 sorties PWM)

4
 6 x entrées analogiques (A0…A5)
 Prise en charge des bus SPI et I²C
 Connecteur USB
 Embase ICSP
 Bouton Reset

D’un environnement de développement - EDI:


 Celui-ci permet l’édition des programmes en langage C et assembleur
 De compiler, vérifier la syntaxe du programme et générer le firmware (verify/compile)
 De charger (upload to I/Oboard) le firmware dans la mémoire du microcontroleur
 De dialoguer avec la carte lors de son fonctionnement (serial monitor)
 Il fournit des bibliothèques de code pour étendre les fonctionnalités.
 Pour le lancer exécuter le programme …\arduino.exe
 Sélectionner la liaison série COM_XX (menu Tools\serial_port)

Figure 2 Environnement de développement Arduino

La plateforme Arduino va donc permettre :


 de lire des informations analogiques ( lecture de valeurs de tension issues de capteur T° par
exemple)
 de lire des états logiques ( état de capteurs tout ou rien, boutons, fins de course, ..)
 de piloter avec un signal PWM des actionneurs ( commande de moteurs CC, …)
 de piloter des sorties tout ou rien ( relais, diodes, afficheurs, ..)
 de dialoguer avec une autre partie commande par la liaison série/Usb

Le programme écrit en langage C sera compilé et chargé dans la mémoire du microcontroleur. Ce


programme (firmware) assure l’ensemble de ces dialogues. Il est au moins constitué de 2 fonctions :
 La fonction void setup() qui assure l’initialisation des E/S du microcontroleur, elle est
appellée une seul fois au démarrage de l’application ( alimentation du processeur ou RESET).
Les interfaces d’entrées/sorties(I/O) binaires peuvent être programmées en entrée ou en
sortie.
 La fonction void loop() qui contient les instructions et appels à d’autres fonctions du
programme qui est indéfinimment executé.

5
Utilisation de la breadBoard

La breadBoard est un support pour câbler un schéma électrique. Elle sera utilisée pour réaliser le
schéma électrique et relier celui-ci aux entrées sorties de la carte microcontrôleur Arduino UNO.

Figure 3 Support breadBoard pour le câblage de schéma électrique

Sur la figure ci-dessus de la breaBoard nous avons rajouté les lignes grisées qui permettent de définir
les liaisons électriques 2 points reliés par un trait gris sont connectés électriquement.

6
Liste du matériel fourni KitBox initiation

Arduino UNO + Câble USB 1

Breadboard + cables 1

LED Rouge (La plus grande patte c’est 4


l’anode +)

Resistances: 220 Ohms (Rouge-Rouge- 8


Brun) x 8

Resistances: 330 Ohms (Orange- 1


Orange-Brun)

Potentiomètre 1

Switch 2

Buzzer 1

LM35 (capteur temperature) 1

74HC4511 (décodeur afficheur) 1

Afficheur 7 segments 1

Figure 4 Liste du matériel fourni KitBox Initiation

7
Logiciels nécessaires

Arduino (http://arduino.cc/en/Main/OldSoftwareReleases)
Frtizting (http://fritzing.org/download/)

Figure 5 Le poste de travail principal

1 - Installez l’environnement de développement Arduino, pour cela télécharger la version 1.0.6 sur
arduino.cc. Utilisez la version avec installeur si vous êtes administrateur de poste.

2 - une fois installé (version Windows), une entrée menu Arduino dans la barre de lancement
vous permet de lancer l’IDE Arduino.

3 - Connectez à l’aide du câble USB l’Arduino et le PC, normalement le driver s’installe


automatiquement. Si cette connexion vous retourne une erreur liée à l’installation du driver,
referez-vous au site web pour finir l’installation du driver (vous devez être administrateur de votre
poste pour cette étape) : http://arduino.cc/en/pmwiki.php?n=Guide/Windows

4- Installation de Fritzing (pas de difficulté particulière)

Directives pour chaque exercice

Il vous est demandé pour chaque exercice :


 De câbler le circuit
 De recopier/ou développer le programme
 De tester votre réalisation
 De bien comprendre ce que vous avez fait !
 ….

8
1. Exercice 1 - Blinky LED
1.1. Objectifs
Le programme ci-après génère un train de signaux carrés sur la sortie digitale n°13. La Led rouge est
branchée sur cette sortie, en série avec une résistance pour limiter le courant. Elle s’allume quand la
sortie N°13 est à l’état haut : 5V

1.2. Schéma de câblage

Figure 6 Schéma de câblage Exercice 1

1.3. Technologie des composants

Figure 7 Technologie – Exercice 1

9
LED : composant optoélectronique qui émet de la lumière lorsqu’il est parcouru par un courant. La
LED ne laisse passer le courant que dans un seul sens Anode vers Cathode. On reliera donc la borne
Anode au + (broche la plus longue) et la borne Cathode au – de la source d’alimentation. On évitera
de brancher la diode directement à la source d’alimentation et on utilisera en série une résistance
pour limiter le courant 15 mA par exemple. La LED rouge produit une chute de tension d’environ
1.8V ( cette chute de tension dépend aussi de la technologie de la LED et de sa couleur) . On peut
3.2
écrire 5𝑉 = 𝑈𝐿𝐸𝐷 + 𝑈𝑅 = 1.8 + 𝑅. 𝐼 => 𝑅 = = 213 Ohms
0.015

1.4. Principales fonction à découvrir


delay(ms) : pauses the program for the around of time “ms” (in milliseconds)
pinMode(pin,OUTPUT) : configure the “pin” in OUTPUT
digitalWrite(pin,HIGH) : set TRUE digital output “pin”.

1.5. Le programme

Figure 8 Exemple de programme pour l’Exercice 1

1.6. Les écueils prévisibles


Problème Causes Remèdes
La Led ne s’éclaire Vous avez connecté la LED à l’envers Brancher correctement la LED
pas

Vous utilisez des points de la breadboard Analysez bien le schéma de


non reliés entre eux électriquement câblage tel qu’il vous est donné,
ainsi que le schéma électrique de
la breadboard, et corrigez si
nécessaire
La compilation Vous n’avez pas sélectionné le bon type Mettre UNO si vous avez une
génère une erreur de carte dans le menu de l’environnement carte Arduino Uno
de développement Outils -> Type de
carte?
Vous avez fait une erreur de syntaxe, Interprétez l’erreur que vous
n’avez-vous pas oublié un point-virgule à retourne la compilation en
la fin de chaque ligne particulier la localisation de
l’erreur

10
2. Exercice 2 - Blinky LED and dialog PC
2.1. Objectifs
Le Firmware dans l’Arduino renvoi des informations sur le PC connecté via le port USB. Cela peut être
très utile pour relier l’Arduino à d’autres périphériques, mais aussi très utile pour avoir l’état d’une
variable ou du programme dans la phase débogage.

Pour cela on utilise le moniteur de liaison série disponible sur l’EDI, pour recevoir des informations
depuis la liaison USB/série entre l’ordinateur et la carte microcontrôleur. Une fois le programme
chargé dans le microcontrôleur, il faut ouvrir le serial monitor sur le PC (menu tools de l’IDE arduino-
>serial monitor). A vous de décoder, comprendre et faire fonctionner ce programme.

2.2. Schéma de câblage

Figure 9 Schéma de câblage Exercice 2

11
2.3. Principales fonction à découvrir
Serial.begin(vitesse) initialisation de la liaison série « vitesse »=9600bauds
Serial.print(texte) envoi vers le PC le contenu de « texte »
Serial.println(texte) envoi vers le PC le contenu de « texte », rajoute un saut de ligne à la fin, et un retour
en début de ligne
2.4. Le programme

Figure 10 Exemple de programme pour l’Exercice 2

2.5. Travail à faire en supplément


Modifier ce programme pour changer la période de la
trame du signal carré
2.6. Les écueils prévisibles
Problème Causes Remèdes
Aucun caractère Vous avez oublié d’initialiser la liaison Ajouter serial.begin dans la
ne s’affiche dans série dans le setup du programme fonction setup de votre
le moniteur série programme Arduino.
La vitesse de transmission de données Dans notre cas, la vitesse de
n’est pas la bonne transmission des données par la
liaison série doit être de 9600.
La compilation Vous avez fait une erreur de syntaxe, Interprétez l’erreur que vous
génère une erreur n’avez-vous pas oublié un point-virgule à retourne la compilation en
la fin de chaque ligne particulier la localisation de
l’erreur

12
3. Exercice 3 – Détection d’un niveau de seuil de tension analogique
3.1. Objectifs
Le programme ci-après détecte un seuil de tension analogique pour allumer une LED. Une résistance
variable, reliée au 5V, est branché sur la broche A0 de l’Arduino. Cette broche est une entrée
analogique pouvant récupérer une tension entre 0V et 5V. Une LED rouge est branchée sur la sortie
digitale n°3.

L’objectif est d’allumer ou d’éteindre la LED selon les conditions suivantes :


Si A0 > 2,5V alors on allume la LED.
Sinon on éteint la LED.

3.2. Schéma de câblage

Figure 11 Schéma de câblage Exercice 3

13
3.3. Technologie des composants
3.3.1. Potentiomètre
Un potentiomètre (appelé familièrement potar) est un type de résistance variable à trois bornes,
dont une est reliée à un curseur se déplaçant sur une piste résistante terminée par les deux autres
bornes. Ce système permet de recueillir, entre la borne reliée au curseur et une des deux autres
bornes, une tension qui dépend de la position du curseur et de la tension à laquelle est soumise la
résistance.

Figure 12 Technologie Potentiomètre – Exercice 3

3.3.2. Entrée analogique Arduino


La carte Arduino contient un canal de 6 entrées analogiques, et d’un convertisseur 10-bit analogique-
numérique. Cela signifie qu’il convertit les tensions d'entrée (plage 0-5 volts) en valeurs entières
entre 0 et (2^10)-1 (soit de 0 à 1023). Cela donne une résolution de:

𝑡𝑒𝑛𝑠𝑖𝑜𝑛𝑀𝑎𝑥 5
= = 0,0049 𝑣𝑜𝑙𝑡 𝑝𝑎𝑟 𝑢𝑛𝑖𝑡é
2𝑛𝑏𝑖𝑡𝑠 1024

3.4. Principales fonction à découvrir


AnalogRead(pin) : Lit la valeur de la broche analogique spécifiée « pin ». Cette fonction retourne
une valeur entière entre 0 et 1023.

14
3.5. Le programme

Figure 13 Exemple de programme pour l’Exercice 3

3.6. Les écueils prévisibles


Problème Causes Remèdes
Les données en Vous avez inversé le branchement au niveau Brancher correctement le
entrée ne du potentiomètre potentiomètre
correspondent pas à
celle attendues Vous utilisez des points de la breadboard non Analysez bien le schéma de câblage
reliés entre eux électriquement tel qu’il vous est donné, ainsi que le
schéma électrique de la breadboard,
et corrigez si nécessaire
La compilation La compilation génère une erreur Vous avez fait une erreur de
génère une erreur syntaxe, n’avez-vous pas oublié un
point-virgule à la fin de chaque ligne

3.7. Travail à faire en supplément

Modifier le programme pour afficher dans le moniteur


série la valeur de la tension détectée par l’Arduino,
mais aussi l’état de la LED (ON ou OFF)

15
4. Exercice 4 – Effet de fondu d’une LED
4.1. Objectifs
Le programme ci-après permet la décoloration d'une LED. Un bouton poussoir est relié sur la broche
3 de l’Arduino (configuré comme une entrée). Une LED est connecté à la proche 9 de l’Arduino
(configuré en sortie). L’objectif est de créer un effet de fondu de luminosité de la LED lors d’un appui
sur un bouton. Afin de créer cet effet de fondu, on utilise un signal PWM (Pulse Width Modulation)
permettant de moduler le signal de sortie (plus de détail dans la partie 5.3 de ce chapitre).

4.2. Schéma de câblage

Figure 14 Schéma de câblage Exercice 4

16
4.3. Technologie des composants

Définition d’un signal PWM (définition reprise du site Arduino)


Pulse Width Modulation, or PWM, is a technique for getting analog results with digital means. Digital
control is used to create a square wave, a signal switched between on and off. This on-off pattern
can simulate voltages in between full on (5 Volts) and off (0 Volts) by changing the portion of the
time the signal spends on versus the time that the signal spends off.

The duration of "on time" is called the pulse width. To get varying analog values, you change, or
modulate, that pulse width. If you repeat this on-off pattern fast enough with an LED for example,
the result is as if the signal is a steady voltage between 0 and 5v controlling the brightness of the LED.

In the graphic below, the green lines represent a regular time period. This duration or period is the
inverse of the PWM frequency. In other words, with Arduino's PWM frequency at about 500Hz, the
green lines would measure 2 milliseconds each. A call to analogWrite() is on a scale of 0 - 255, such
that analogWrite(255) requests a 100% duty cycle (always on), and analogWrite(127) is a 50% duty
cycle (on half the time) for example.

Figure 15 Technologie Signal PWM – Exercice 4

17
4.4. Principales fonction à découvrir
digitalRead(pin) : Lit la valeur de la broche numérique spécifiée « pin ». Cette fonction retourne
une valeur HIGH (niveau binaire 1) ou LOW (niveau binaire 0).
analogWrite(pin,value) : Génère une tension analogique « (signal PWM) sur la broche « pin »

4.5. Le programme

Figure 16 Exemple de programme pour l’Exercice 4

4.6. Les écueils prévisibles


Problème Causes Remèdes
La LED ne s’éclaire La LED n’est pas bien connectée Brancher correctement la LED (sens
pas + pin Arduino)

Vous utilisez des points de la breadboard non Analysez bien le schéma de câblage
reliés entre eux électriquement tel qu’il vous est donné, ainsi que le
schéma électrique de la breadboard,
et corrigez si nécessaire
Le bouton n’est pas bien connecté Brancher correctement le bouton
poussoir (vérifier le sens)
La compilation La compilation génère une erreur Vous avez fait une erreur de
génère une erreur syntaxe, n’avez-vous pas oublié un
point-virgule à la fin de chaque ligne

18
5. Exercice 5 – Variateur de luminosité d’une LED
5.1. Objectifs
A partir des exercices précédents, nous vous demandons de remplir l’objectif suivant :

Faire varier la luminosité d’une LED à


partir d’un potentiomètre

Figure 17 Les objectifs de l’exercice 5

5.2. Conseils
 Faire le bilan des entrées/sorties et des composants que vous avez besoin
 Faire le montage électronique sur la breadboard
 Si nécessaire, préparer votre programme sur papier (fonction principale, type de
variable nécessaire, schéma bloc….)
 Ecrire votre programme de manière structuré et bien commenté
 Tester et valider les objectifs.

N’hésitez pas à tester progressivement votre programme. Vous pouvez l’écrire de manière
continue en validant chaque fonction principale séparément.

19
6. Exercice 6 – Capteur de température
6.1. Objectifs
L’exercice suivant a pour objectif de récupérer une valeur de température à partir d’un capteur
analogique (le LM35) et d’envoyer une valeur en degré au moniteur série. Ce capteur est connecté
sur une des broches des entrées analogiques de l’Arduino.

6.2. Schéma de câblage

Figure 18 Schéma de câblage Exercice 6

20
6.3. Technologie des composants

Figure 19 Technologie – Exercice 6

Le capteur de température LM35 est très facile à utiliser puisqu’il suffit de l’alimenter avec ses
broches VCC et GND. La broche centrale correspond au signal de la température sous forme d’une
tension analogique qui est proportionnel à la température en degré Celsius. La conversion elle aussi
est simple puisqu’un volt correspond à 100 degrés Celsius.

6.4. Le programme à réaliser

Maintenant, vous devez écrire un programme permettant de lire


la tension du capteur sur l’entrée analogique A0 de l’Arduino et
de la convertir en degré Celsius. Cette valeur de température
devra s’afficher sur le moniteur série du logiciel Arduino.

Donner la précision de mesure de température (Rappel : les


entrées analogiques de l’Arduino dispose d’un convertisseur 10-bit
analogique-numérique.

6.5. Conseils
 Faire le bilan des entrées/sorties et des composants que vous avez besoin
 Faire le montage électronique sur la breadboard
 Attention au sens de branchement du capteur de température
 Bien réfléchir sur le calcul de conversion Tension/Température
 Si nécessaire, préparer votre programme sur papier (fonction principale, type de
variable nécessaire, schéma bloc….)
 Ecrire votre programme de manière structuré et bien commenté
 Tester et valider les objectifs.

21
7. Exercice 7 – Afficheur 7 segments
7.1. Objectifs
Le circuit ci-après permet d’afficher un chiffre sur un afficheur 7 segments. L'afficheur 7 segments est
connecté sur un décodeur BCD 74HC4511. On spécifie le chiffre à afficher en utilisant des fils de
prototypage câblés sur les entrées BCD du décodeur et reliés au +5V ou 0V. On utilisera des
résistances de 220ohms pour limiter le courant dans les diodes de l'afficheur comme dans l'exercice
N°1.

Dans un premier temps, la platine Arduino servira seulement pour l’alimentation des composants

7.2. Schéma de câblage

Figure 20 Schéma de câblage Exercice 7

7.3. Technologie des composants


7.3.1. Afficheur 7 segments
Les afficheurs 7 segments sont un type d'afficheur
très présent sur les calculatrices et les montres à
affichage numérique. Les caractères (des chiffres,
bien que quelques lettres soient utilisées pour
l'affichage hexadécimal) s'écrivent en allumant ou en
éteignant des segments (LEDs), au nombre de sept.
Quand les 7 segments sont allumés, on obtient le
chiffre 8.

Figure 21 Ecriture des caractères sur un afficheur 7


segments

22
Mais comment fonctionne ce composant ?
Comme son nom l'indique, il y a 7 LEDs dans un afficheur 7 segments (8 en comptant le point rouge
en bas à droite). Il existe principalement deux types d'afficheurs: anode commune et cathode
commune.
Cathode commune veut simplement dire : relié à la masse, s'allume avec un état haut
Anode commune : relié à l'alimentation, s'allume avec un état bas.

Petit exemple rapide pour comprendre.


Imaginons que c'est un afficheur 7 segments en cathode commune : 3 et 8 seront à la masse. Si on
veut afficher "1", il faudra mettre 5V sur 6 et 4 (tous les autres à 0V), Pour un "8" il faudra tous les
mettre à 5V (sauf 3 et 8 bien sûr).

Figure 22 Exemple d’afficheur 7 segments en cathode commune

Il y a donc 8 pins à commander. Si nous souhaitons trois afficheurs, nous devrons utiliser ainsi 24
pins. Ce qui fait énormément de fils à brancher. Du coup, des décodeurs ont été inventé pour
simplifier ces branchements.

7.3.2. Décodeur 74HC4511


Le décodeur 74HC4511 permet à l’aide de 4 pins d’en commander 8 à partir de la table de vérité ci-
dessous.

Figure 23 Schéma du 74HC4511 et de sa table de vérité

23
A partir des signaux envoyés sur les pins A,B,C et D du décodeur, il est possible d’activer les sorties a,
b, c, d, e, f, g correspondant aux pins d’entrées de l’afficheur 7 segments. Par exemple, si D=0, C=0,
B=0 et A=1, les sorties b et c du décodeur sont activées. Ainsi, les segments b et c de l’afficheur 7
segments sont allumés. Le chiffre 1 est ainsi représenté.

7.4. Travail à réaliser


Nous vous demandons d’effectuer le schéma de câblage présenté juste avant. Quel caractère
s’affiche sur l’afficheur 7 segments ?

24
8. Exercice 8 – Compteur
8.1.1. Pilotage à l’aide de l’arduino

Il suffit de reprendre le schéma de câblage précédent et de relier 4 sorties digitales de l’Arduino aux
4 entrées du décodeur.

8.1.2. Programme avec décodeur

Vous pouvez alors écrire un programme permettant d’afficher des chiffres sur un afficheur 7
segments. Vous pouvez utiliser la fonction bitRead(X,n) qui retourne l’état du n° bit du mot X.

Pour aller plus loin, vous pouvez imaginer de créer un compteur de 0 à 9 à chaque fois que vous
appuyez sur un bouton poussoir ou encore d’afficher la valeur du chiffre des unités de la
température issus du capteur LM35 (utilisation de la fonction arduino bitRead()

25

Vous aimerez peut-être aussi