Afficheurs à 7 segments : guide des brochages et des applications

Table des Matières

Qu'est-ce qu'un afficheur à 7 segments ?

Un afficheur à 7 segments est un composant électronique composé de 7 LED individuelles disposées selon un motif spécifique pour afficher des chiffres (0 à 9) et certaines lettres. Ces LED sont nommées a, b, c, d, e, f, g, et l'afficheur comprend généralement un point décimal (dp) en option.

128 variations of 7 segment display
128 variations of 7 segment display
7 segment display animation in variable arabic numerals and characters
7-segment display animation

Selon différentes dispositions et combinaisons, il existe 128 variations (chiffres arabes et caractères) pour l'affichage à 7 segments.

Brochage de l'afficheur à 7 segments

Le brochage d'un afficheur à 7 segments varie en fonction de son type, qui se divise principalement en deux catégories : anode commune et cathode commune.

7 segment display pinout
7-segment display pinout

Configuration des broches

Voici un exemple d'affectation des broches pour un affichage à 7 segments classique (notez que les brochages réels peuvent varier selon le fabricant et le modèle) :

Anode commune :

Toutes les anodes (positives) de l'affichage à 7 segments sont connectées entre elles, et lorsqu'une cathode est mise à l'état bas, la LED correspondante s'allume.

Common anode 7 segment display
Common anode 7-segment display
  • g, f, a, b, e, d, c, dp : ce sont les broches des segments, correspondant respectivement aux sept segments et au point décimal.
  • COM : broche d'anode commune, connectée à VCC.

Cathode commune :

Toutes les cathodes (négatives) de l'affichage à 7 segments sont connectées entre elles, et lorsqu'une anode (positive) est mise à l'état haut, la LED correspondante s'allume.

Common cathode 7 segment display
Common cathode 7-segment display

De même, les broches de segment (g, f, a, b, e, d, c, dp) correspondent aux segments et au point décimal, mais la broche de cathode commune (COM) est connectée à GND.

Câblage de l'afficheur à 7 segments

Pour faire fonctionner un afficheur à 7 segments, les segments individuels (a, b, c, d, e, f, g, dp) doivent être connectés à des broches de sortie spécifiques sur un microcontrôleur. Par exemple, pour un afficheur à 7 segments à cathode commune, l'extrémité négative de chaque segment est connectée à une broche de masse commune, tandis que l'extrémité positive de chaque segment est connectée à une broche de sortie différente sur le microcontrôleur.

Configuration de base du câblage

  • L'afficheur à 7 segments comporte 8 broches (7 pour les segments et 1 pour le point décimal).
  • Chaque broche correspondant à un segment (a à g) est connectée au microcontrôleur.
  • Pour la configuration à cathode commune, connectez la broche de cathode commune à la masse.

Exemple de connexion à Arduino

Lorsqu'on connecte un afficheur à 7 segments à un Arduino, les broches des segments sont généralement connectées à différentes broches numériques de la carte Arduino. Par exemple, dans une configuration à anode commune, les broches des segments peuvent être connectées comme suit :

  • a – Broche 7 de l'Arduino
  • b – Broche Arduino 8
  • c – Broche Arduino 4
  • d – Broche Arduino 3
  • e – Broche Arduino 2
  • f – Broche Arduino 6
  • g – Broche Arduino 5
  • COM – Broche Arduino 9 (connectée à VCC)

Dans cette configuration, pour éclairer un segment spécifique, la broche Arduino correspondante est réglée sur LOW, tandis que la broche d'anode commune reste sur HIGH.

Comment contrôler un afficheur à 7 segments

La clé pour contrôler un affichage à 7 segments consiste à fournir la tension correcte à chaque segment afin de former le chiffre ou le symbole souhaité.

Affichage des nombres

Pour afficher un chiffre, le microcontrôleur doit activer les segments appropriés. Par exemple :

  • Pour afficher 0, les segments a, b, c, d, e et f doivent être allumés, tandis que le segment g reste éteint.
Digital encoding for 7 segment display
Digital encoding for 7-segment display

Composants requis

Tout comme pour une matrice LED, ce projet nécessite un câblage et des résistances considérables. Chaque LED ayant besoin de sa propre résistance pour éviter toute brûlure, veillez à disposer d'un nombre suffisant de résistances. Pour l'ensemble du projet, vous aurez besoin des composants suivants :

  • Arduino Uno
  • Arduino IDE
  • Affichage à sept segments
  • Fils électriques
  • 8 résistances de 220 ohms
  • Plaque d'essai
  • Câble USB

Exemple de code pour afficher des nombres

				
					int pin_a = 7, pin_b= 6, pin_c = 5, pin_d = 10, pin_e = 11, pin_f = 8, pin_g = 9, pin_p = 4;

// Segment data for digits 0-9
int numTable[10][8] = {
  {1, 1, 1, 1, 1, 1, 0, 0}, // 0
  {0, 1, 1, 0, 0, 0, 0, 0}, // 1
  {1, 1, 0, 1, 1, 0, 1, 0}, // 2
  {1, 1, 1, 1, 0, 0, 1, 0}, // 3
  {0, 1, 1, 0, 0, 1, 1, 0}, // 4
  {1, 0, 1, 1, 0, 1, 1, 0}, // 5
  {1, 0, 1, 1, 1, 1, 1, 0}, // 6
  {1, 1, 1, 0, 0, 0, 0, 0}, // 7
  {1, 1, 1, 1, 1, 1, 1, 0}, // 8
  {1, 1, 1, 1, 0, 1, 1, 0}, // 9
};

void setup(){
  for (int i = 4; i <= 11; i++){
    pinMode(i, OUTPUT);
  }
}

void loop(){
  for (int i = 0; i < 10; i++){
    digitalWrite(pin_a, numTable[i][0]);
    digitalWrite(pin_b, numTable[i][1]);
    digitalWrite(pin_c, numTable[i][2]);
    digitalWrite(pin_d, numTable[i][3]);
    digitalWrite(pin_e, numTable[i][4]);
    digitalWrite(pin_f, numTable[i][5]);
    digitalWrite(pin_g, numTable[i][6]);
    digitalWrite(pin_p, numTable[i][7]);
    delay(1000);
  }
}

				
			

Dans cet exemple, le numTable tableau contient les données nécessaires pour allumer les segments appropriés pour chaque chiffre.

Projets d'affichage à 7 segments à plusieurs chiffres

Pour les affichages à plusieurs chiffres, le moyen le plus simple de contrôler plusieurs affichages à 7 segments est le multiplexage. Une autre méthode consiste à utiliser la bibliothèque Arduino.

Technique de multiplexage

Avec le multiplexage, plusieurs écrans partagent le même ensemble de broches de commande, et chaque écran est allumé séquentiellement. Ce processus est si rapide que l'œil humain perçoit tous les chiffres comme étant allumés en même temps.

Exemple de code pour le multiplexage d'affichages à 7 segments

				
					const int digitPins[3] = {2, 3, 4}; // Digit selection pins
const int segmentPins[8] = {6, 7, 8, 9, 10, 11, 12, 13}; // Segment pins
int numTable[10][8] = { {0, 0, 0, 0, 0, 0, 1, 1}, {1, 0, 0, 1, 1, 1, 1, 1}, ... };

void setup(){
  for (int i = 2; i <= 4; i++) {
    pinMode(i, OUTPUT);
    digitalWrite(i, LOW);
  }
  for (int i = 6; i <= 13; i++) {
    pinMode(i, OUTPUT);
    digitalWrite(i, HIGH);
  }
}

void loop(){
  for (int i = 0; i < 10; i++){
    for (int j = 0; j < 3; j++) {
      showdigit(i, j);
    }
    delay(500);
  }
}

void showdigit(int num, int digit){
  digitalWrite(digitPins[digit], HIGH);
  for (int i = 0; i < 8; i++) {
    digitalWrite(segmentPins[i], numTable[num][i]);
  }
  delay(500);
  digitalWrite(digitPins[digit], LOW);
}

				
			

Utilisation des bibliothèques pour contrôler les afficheurs à 7 segments

Pour plus de commodité, des bibliothèques telles que SevSeg sont disponibles pour simplifier le contrôle des afficheurs à 7 segments. Cette bibliothèque est utile pour contrôler les afficheurs à plusieurs chiffres, car elle abstrait une grande partie du câblage complexe et de la logique de contrôle.

Nous pouvons rechercher et installer SevSeg à partir du menu Arduino : Outils >> Gérer les bibliothèques.

Install SevSeg library on Arduino
Install SevSeg library on Arduino

Exemple de code utilisant la bibliothèque SevSeg

				
					#include "SevSeg.h"
SevSeg sevseg;

void setup() {
  sevseg.begin(COMMON_CATHODE, 3, digitPins, segmentPins);
}

void loop() {
  int readValue = analogRead(A0);
  int showValue = map(readValue, 0, 1023, 0, 999);
  sevseg.setNumber(showValue, 3);
  sevseg.refreshDisplay();
}

				
			

Applications des afficheurs à 7 segments

En raison de sa simplicité, de sa facilité d'utilisation et de son faible coût, l'affichage à 7 segments est largement utilisé dans diverses applications, telles que :

  • Horloges électroniques : affichage de l'heure et de la date ;
  • Calculatrices : affichage des résultats de calcul ;
  • Appareils électroménagers : panneaux d'affichage pour des produits tels que les micro-ondes, les climatiseurs et les machines à laver ;
  • Tableaux de bord de voitures : affichage d'informations telles que la vitesse et le kilométrage ;
  • Équipements industriels : affichage des mesures provenant d'appareils tels que les régulateurs de température et les manomètres ;
  • Instruments de laboratoire : affichage des données et résultats expérimentaux ;
  • Électronique grand public : affichage du contrôle du volume sur les équipements audio.

Conclusion

Les afficheurs à 7 segments sont des composants polyvalents qui permettent d'afficher facilement des données numériques. Comprendre leur câblage, leurs méthodes de contrôle et leurs applications peut considérablement améliorer la fonctionnalité de vos projets, des horloges simples aux affichages complexes. Que vous utilisiez le multiplexage, des bibliothèques ou des registres à décalage, il existe de nombreuses façons de contrôler efficacement les afficheurs à 7 segments, chacune étant adaptée à différentes exigences de projet.

Abonnez-vous

Rejoignez notre liste d’abonnés pour obtenir mensuel blog des mises à jour, des nouvelles technologies, des études de cas. Nous n’enverrons jamais de spam, et vous pouvez vous désinscrire à tout moment.

À Propos De L'Auteur

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

Besoin D'Aide?

Retour en haut

Instant Quote