Skip to Content

Arduino et circuit intégré pilote d’afficheur 7 segments CD4511 – Un guide étape par étape

Arduino et circuit intégré pilote d’afficheur 7 segments CD4511 – Un guide étape par étape

Avez-vous déjà voulu réaliser un projet utilisant un afficheur 7 segments à 4 ou 8 chiffres ?

Piloter un grand nombre de 7-segment afficheurs avec un Arduino UNO peut être compliqué, car cela nécessite beaucoup de broches et des fonctions logicielles complexes.

C’est là que le circuit intégré CD4511, pilote d’afficheur 7 segments, devient très utile.

Le CD4511 est un circuit intégré décodeur à verrouillage BCD vers 7 segments, largement utilisé dans les horloges numériques, compteurs et systèmes d’affichage.

Le CD4511 convertit les données en décimal codé binaire (BCD) en un motif pour afficheur 7 segments.

Avec le CD4511, vous pouvez connecter votre Arduino UNO à un plus grand nombre d’afficheurs 7 segments en utilisant moins de broches et moins d’efforts logiciels.

Dans cet article, je vous fournirai un schéma de connexion et des exemples de code pour vous aider à utiliser le CD4511 avec votre Arduino UNO.

Que vous soyez débutant ou maker expérimenté, le CD4511 est un outil utile et puissant pour votre prochain projet d’afficheur 7 segments.

Alors prenez votre breadboard, et c’est parti !

Composants nécessaires pour réaliser le projet Arduino et afficheur 7 segments avec CD4511

Composants matériels

Logiciel

Makerguides.com participe au programme Amazon Services LLC Associates, un programme d’affiliation publicitaire conçu pour permettre aux sites de percevoir des commissions en faisant la promotion et en créant des liens vers des produits sur Amazon.com.

Notions de base sur le décodeur BCD CD4511

Dans cette section, nous allons comprendre les bases du circuit intégré décodeur BCD CD4511. C’est un décodeur BCD vers 7 segments à faible coût avec de nombreuses fonctionnalités et un pilote d’affichage très simple.

Le CD4511 est un circuit intégré pratique pour piloter des afficheurs 7 segments. C’est un dispositif CMOS conçu pour être à faible consommation et résistant au bruit. Cela le rend idéal pour diverses applications.

Le CD4511 prend des données en décimal codé binaire (BCD) et fournit en sortie les informations correspondantes à un afficheur 7 segments.

Le CD4511 possède quatre entrées BCD et sept sorties pour l’afficheur 7 segments.

Les quatre entrées BCD sont connectées aux entrées de données, tandis que les sept sorties sont reliées aux segments de l’afficheur 7 segments.

L’image ci-dessous montre le schéma fonctionnel du circuit intégré CD4511.

diagram of the CD4511 IC

Lorsque vous envoyez un nombre BCD au CD4511, il le décode et allume les segments correspondants pour afficher le chiffre sur l’afficheur 7 segments.

L’un des grands avantages du CD4511 est sa flexibilité. Il peut être utilisé avec des afficheurs 7 segments à cathode commune ou à anode commune, ce qui en fait un choix populaire pour une large gamme de projets.

Il est aussi facile à utiliser – il suffit de connecter les entrées et sorties, et le CD4511 fait le reste.

L’image ci-dessous montre le détail du brochage du CD4511.

CD4511 pinout details

Un autre avantage du CD4511 est sa faible consommation d’énergie. Cela le rend idéal pour les projets alimentés par batterie où la conservation d’énergie est importante.

Le circuit intégré CD4511 dispose d’une fonction test lampe (LT), qui allume tous les segments de l’afficheur 7 segments.

Si vous souhaitez éteindre temporairement tous les segments, le CD4511 possède aussi une fonction de masquage active à l’état bas.

Cette fonction permet de créer des effets de clignotement, rendant vos affichages plus dynamiques et attrayants. Le tableau ci-dessous résume les fonctions.

table summarizes the functions

Que vous travailliez sur un projet simple ou plus complexe, le CD4511 est un excellent choix pour piloter des afficheurs 7 segments.

Caractéristiques du CD4511

Voici les caractéristiques du circuit intégré CD4511 compatible Arduino :

  • Plage de tension d’alimentation de 4,5 V à 5,5 V
  • Capacité de source de courant élevée (7,5 mA)
  • Haute immunité au bruit
  • Verrous d’entrée pour le stockage du code BCD
  • Délais de propagation et temps de transition équilibrés
  • Consommation maximale de courant de 8 µA à température ambiante
  • Fonction de masquage des segments
  • Fonction test lampe (pour tester et déboguer facilement les segments)

Détails des broches du circuit intégré CD4511

Les entrées BCD servent à recevoir les données en décimal codé binaire, qui sont décodées puis affichées sur un afficheur 7 segments.

L’entrée test lampe sert à tester tous les segments de l’afficheur 7 segments. L’entrée masquage sert à éteindre temporairement tous les segments.

Les sorties 7 segments pilotent les segments correspondants de l’afficheur 7 segments.

J’ai résumé la description des broches du circuit CD4511 dans le tableau ci-dessous.

Numéro de broche Nom de la broche Fonction de la broche
1 D1 Entrée de données BCD D1
2 D2 Entrée de données BCD D2
3 #LT Test lampe (actif bas)
4 #BL Fonction masquage (actif bas)
5 #LE Activation du verrou (entrée active basse)
6 D3 Entrée de données BCD D3
7 D0 Entrée de données BCD D0
8 GND Connexion à la masse
9-15 a-f Broches de commande des segments LCD
16 VCC Broche d’alimentation. Cette broche doit être découplée avec un condensateur de 0,1 µF à 1,0 µF.

Applications potentielles du circuit intégré CD4511

  1. Affichages numériques dans les horloges et calculatrices
  2. Panneaux de contrôle de stations météo pour afficher la température, la pression, etc.
  3. Informations numériques affichées sur les balances
  4. Équipements de mesure, et
  5. Systèmes de contrôle de processus industriels, etc.

Instructions étape par étape pour connecter le CD4511 avec Arduino UNO et un afficheur 7 segments

Dans cette section, nous allons réaliser un projet utilisant Arduino UNO, un afficheur 7 segments et le module CD4511.

Les connexions sont simples et prennent beaucoup moins de temps à réaliser.

Commençons par les connexions matérielles !

Comment connecter le pilote 7 segments CD4511 à l’Arduino UNO ?

Voici le guide de connexion étape par étape pour réaliser le projet Arduino avec le module CD4511.

Étape 1 : Commencez par les connexions GND

Start with the GND connections

Connectez la broche GND du module CD4511 à la masse (GND) de l’Arduino.

Choisissez n’importe quelle broche GND disponible sur l’Arduino pour cette connexion.

Il est recommandé de commencer par les connexions à la masse.

Étape 2 : Connectez les lignes BCD au module

Connect the BCD Lines to the module

Reliez les broches 2 à 5 de l’Arduino aux entrées de données BCD du CD4511.

Étape 3 : Terminez les entrées test lampe et masquage

Terminate the Lamp test and Blank test inputs

Connectez les broches 3 et 4 du CD4511 à la broche 5V de l’Arduino. Ces deux broches servent à tester le module. Dans cet exemple, nous les terminons en toute sécurité.

Étape 4 : Connectez la ligne d’alimentation

Connect the Power line

Reliez la broche VCC du CD4511 à la broche 5 V de l’Arduino UNO.

Étape 5 : Connectez le module 7 segments

Connect the 7-segment module

Connectez le module 7 segments au circuit intégré CD4511.

Étape 6 : Finalisez la connexion

Complete connection

Félicitations ! Toutes les connexions nécessaires sont maintenant terminées.

Exemple de code Arduino pour le projet module CD4511

Dans cette section, vous trouverez le sketch Arduino complet ainsi que les informations pour installer les bibliothèques nécessaires.

Le code Arduino complet pour l’exemple de projet CD4511

 /*
Example of how to drive a seven-segment display using HCF4511 or similar

This sketch drives the display in order to show a number from 0 to 9 every time a button connected to A0 is pressed.
Source: https://projecthub.arduino.cc/Arduino_Scuola/36b84c1e-70fc-4f09-87a3-62fb39dc21cb
*/

//Declaration   of Arduino pins used as HCF4511 inputs
const int A = 2;
const int B = 3;
const int C = 4;
const int D = 5;

void setup() {
  pinMode(A0, INPUT);
  pinMode(A, OUTPUT); //LSB
  pinMode(B, OUTPUT);
  pinMode(C, OUTPUT);
  pinMode(D, OUTPUT); //MSB
}

int count = 0; //the variable used to show the number

void   loop() {
  if (digitalRead(A0) == LOW) //if button is pressed
  {
    count++;
    delay(200); //the delay prevent from button bouncing
    if (count ==   10) //we want to count from 0 to 9!
      count = 0;
    to_BCD(); //convert   to binary
  }

  if (count == 10)
    count = 0;
}

void to_BCD()
{
  if (count == 0) //write 0000
  {
    digitalWrite(A, LOW);
    digitalWrite(B, LOW);
    digitalWrite(C, LOW);
    digitalWrite(D, LOW);
  }

  if (count == 1) //write 0001
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, LOW);
    digitalWrite(C, LOW);
    digitalWrite(D, LOW);
  }

  if (count == 2) //write 0010
  {
    digitalWrite(A, LOW);
    digitalWrite(B, HIGH);
    digitalWrite(C, LOW);
    digitalWrite(D, LOW);
  }

  if (count == 3) //write 0011
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, HIGH);
    digitalWrite(C, LOW);
    digitalWrite(D, LOW);
  }

  if (count == 4) //write 0100
  {
    digitalWrite(A, LOW);
    digitalWrite(B, LOW);
    digitalWrite(C, HIGH);
    digitalWrite(D, LOW);
  }

  if (count == 5) //write 0101
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, LOW);
    digitalWrite(C, HIGH);
    digitalWrite(D, LOW);
  }

  if (count == 6) //write 0110
  {
    digitalWrite(A, LOW);
    digitalWrite(B, HIGH);
    digitalWrite(C, HIGH);
    digitalWrite(D, LOW);
  }

  if (count == 7) //write 0111
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, HIGH);
    digitalWrite(C, HIGH);
    digitalWrite(D, LOW);
  }

  if (count == 8) //write 1000
  {
    digitalWrite(A, LOW);
    digitalWrite(B, LOW);
    digitalWrite(C, LOW);
    digitalWrite(D, HIGH);
  }

  if (count == 9) //write 1001
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, LOW);
    digitalWrite(C, LOW);
    digitalWrite(D, HIGH);
  }
}

Le code est écrit de manière simple. Pour afficher le chiffre 1 sur l’afficheur 7 segments, il suffit d’envoyer 0001 aux broches d’entrée BCD du décodeur CD4511.

  if (count == 1) //write 0001
  {
    digitalWrite(A, HIGH);
    digitalWrite(B, LOW);
    digitalWrite(C, LOW);
    digitalWrite(D, LOW);
  }

Une autre façon de réduire la longueur du code est de définir une fonction qui prend la valeur à afficher en entrée et la mappe sur les entrées BCD.

FAQ sur le CD4511 et les projets Arduino

J’ai inclus une liste des questions les plus fréquemment posées sur les projets utilisant Arduino et le module BCD vers 7 segments – CD4511.

Si vous avez d’autres questions, n’hésitez pas à les poser dans la section commentaires. Je serai heureux d’y répondre.

1. Qu’est-ce que le circuit intégré CD4511 ?

Le CD4511 est un circuit intégré couramment utilisé pour contrôler des afficheurs 7 segments dans diverses applications, comme les horloges numériques, calculatrices et autres projets d’affichage.

Il agit comme un décodeur et un pilote, convertissant les entrées en décimal codé binaire (BCD) en sorties. Ces sorties binaires contrôlent les segments de l’afficheur 7 segments.

On le trouve dans de nombreux projets amateurs et applications commerciales utilisant des afficheurs 7 segments.

2. Comment le CD4511 fonctionne-t-il avec une carte Arduino ?

Le CD4511 fonctionne avec une carte Arduino en recevant des entrées binaires de la carte, en les décodant, puis en pilotant les segments correspondants de l’afficheur 7 segments.

Le CD4511 nécessite une connexion à l’alimentation (5 V), à la masse, et aux entrées de données de la carte Arduino pour fonctionner correctement (entrées BCD).

3. Quels sont les avantages d’utiliser le CD4511 avec une carte Arduino ?

Le CD4511 offre plusieurs avantages lorsqu’il est utilisé avec une carte Arduino.

  • C’est une solution compacte et économique pour contrôler des afficheurs 7 segments, combinant les fonctions de décodeur et de pilote dans un seul circuit intégré.
  • Il réduit aussi la quantité de câblage et le nombre de composants nécessaires, simplifiant ainsi la construction du projet.
  • Il simplifie le logiciel et fait gagner du temps en réduisant la complexité logicielle.

4. Combien d’entrées possède le CD4511 ?

Le CD4511 possède quatre broches d’entrée. Vous pouvez les utiliser pour recevoir des données en décimal codé binaire (BCD) depuis la carte Arduino UNO.

Le circuit intégré CD4511 décode ces données et contrôle les segments de l’afficheur 7 segments.

Il y a aussi des entrées de test pour effectuer un test rapide de base. Veuillez vous référer à la section sur les bases du CD4511 ci-dessus pour plus de détails.

5. Quel est le courant maximal que le CD4511 peut piloter ?

Le CD4511 peut piloter un courant maximal de 15 mA par segment.

Cela lui permet d’alimenter les afficheurs 7 segments les plus courants, y compris ceux utilisés dans les horloges numériques, calculatrices et autres projets d’affichage.

6. Le CD4511 peut-il être utilisé avec d’autres microcontrôleurs que la carte Arduino ?

Oui, le CD4511 peut être utilisé avec d’autres types de microcontrôleurs que la carte Arduino.

Cependant, le câblage spécifique et le code requis dépendront du microcontrôleur utilisé ainsi que du type d’afficheur 7 segments employé.

Il est important de consulter la fiche technique du CD4511 et du microcontrôleur pour garantir la compatibilité et une utilisation correcte.

Conclusion

Dans cet article, nous avons exploré toutes les caractéristiques et capacités clés du CD4511.

J’ai fourni un guide complet sur son utilisation avec un Arduino UNO.

Avec le guide de connexion étape par étape et les exemples de code fonctionnels, vous avez toutes les informations nécessaires pour démarrer votre projet CD4511 et Arduino.

J’espère que cet article vous a été très utile pour apprendre à connaître le CD4511 et comment l’utiliser avec Arduino.

Si vous avez des questions, commentaires ou suggestions, n’hésitez pas à me contacter.

Mon objectif est de vous fournir toutes les informations et le support nécessaires pour réussir vos projets en un seul endroit.

Si vous avez remarqué des informations manquantes ou des améliorations possibles, merci de me le faire savoir.

Continuez à bricoler. Continuez à apprendre !