Dernière mise à jour :
21/08/2016
Présentation
Le schéma présenté ici montre une façon de
faire pour réaliser un compteur entre 00 et 99, en utilisant
deux
afficheurs
à leds sept segments. Il est possible de le
simplifier pour le transformer en compteur de 0 à 9, ou encore
de l'étendre pour lui permettre d'afficher un nombre entre 000
et 999 ou même 0000 et 9999. Version CMOS (+3V à +15V)
avec CD4029 et CD4543. Voir aussi
Compteur
002
à base de CD4518 et CD4511,
Compteur
003
à base de SN7490 et SN7447 et
Compteur
004
à base de CD4033. Les composants utilisés
ici peuvent aussi être mis à contribution pour
réaliser un décompteur, voir page
Décompteur
001.
Schéma
Le schéma qui suit est celui que j'ai retenu et dupliqué
en trois exemplaires pour la section affichage de mon
jeu
Rouleboule.
Impulsions de comptage
Le comptage s'effectue ici de façon manuelle au travers du
bouton poussoir SW1, mais vous pouvez
bien
entendu remplacer ce bouton poussoir par un circuit "automatique"
quelconque (sortie d'un
oscillateur
ou d'un système de comptage de personnes, par exemple). Tel
quel, le compteur est incrémenté de une unité
à chaque nouvel appui sur le bouton poussoir. Et comme vous le
savez peut-être, ce composant génère des rebonds
mécaniques quand on l'actionne. En clair : vous appuyez dessus
une seule fois, et il fournit une suite de "fermé / ouvert" qui,
si l'on n'y prend garde, produit le même effet que si l'on avait
appuyé dessus plusieurs fois de suite à grande vitesse.
Bien entendu, mieux vaut éviter que ce genre de comportement
soit vu par notre compteur, si l'on ne veut pas que l'affichage passe
de 07 à 14 avec un seul appui sur le bouton poussoir. Pour
celà, un circuit anti-rebonds rudimentaire mais suffisement
efficace, est constitué par les deux composants R2 et C2. Pour
simplifier, on peut dire que C2 "absorbe" les rebonds.
Remarque : un circuit
anti-rebonds
n'est pas un système qui supprime les rebonds mécaniques
de l'élement mécanique actionné (ici un bouton
poussoir), mais qui empêche la production d'une suite
d'impulsions électriques, là où il ne devrait
normalement y en avoir qu'une.
Comptage
Le comptage des impulsions est assuré par un circuit
intégré logique appelé curieusement compteur
(hazard ou pas, je ne sais pas trop). Ce compteur est un modèle
un peu particulier, dans le sens où il est
prépositionnable. Misère, un circuit
intégré logique compteur prépositionnable ! Et
vous voulez qu'on continue l'électonique, avec ça ! Et
bien, pourquoi pas ? On a tous déjà entendu parler un
médecin dans une langue inconnue de nous ("vous avez une
laryngotomie aigüe doublée d'un staphilocoquesinjake
poisseux, je vais vous soignez ça avec du
daffalganosotropikopylus, et ça ira mieux dans 7 jours"), et
ça ne nous empêche pas d'y retourner, non ? Il existe
plusieurs type de compteurs, et j'ai choisi un des plus
compliqués, ça va de soi. Nous disions donc
prépositionnable. Soyez rassuré, ce n'est pas si grave
que ça. Le terme prépositionnable veut simplement dire
que l'on peut initialiser le compteur pour qu'il commence à
compter (ou à décompter) à partir d'un nombre
quelconque, et donc pas forcement par zéro. Ca peut servir dans
certaines application, mais ici, nous ne profiterons pas de cette
fonctionnalité et nous ferons en sorte que le comptage
s'effectue de façon "normale". Ainsi, toutes les entrées
de prépositionnement A, B C et D sont reliées à la
masse. Et de la façon dont le compteur est cablé, ses
sorties BCD (QA, QB, QC et QD) fournissent un mot binaire dont la
valeur s'incrémente de une unité à chaque
impulsion appliquée sur l'entrée d'horloge CLK (CLK =
clock = horloge). Quand le compteur atteind la valeur binaire de sortie
1001, qui correspond en décimal à 9, la valeur qui suit
est 0000 (valeur décimale 0). Au moment même où le
compteur repasse à zéro, la sortie de retenue CO (borne
7) change d'état et incrémente de une unité le
compteur dont l'entrée d'horloge est reliée à
cette sortie (j'ai nommé U3). Pour résumer, nous avons un
premier compteur (U1) qui s'incémente à chaque appui sur
le bouton poussoir, et nous avons un second compteur (U3) qui
s'incrémente quand le premier compteur s'est
incrémenté dix fois. Vous l'avez compris, le premier
compteur sert pour les unités, et le second compteur sert pour
les dizaines. Bien, le comptage c'est bien, mais l'affichage, c'est
mieux. Nous disposons de deux compteurs qui fournissent des mots
binaires, mots bien peu adaptés à l'affichage direct sur
des afficheurs sept segments. Nous devons trouver une solution, et si
possible, rapidement.
Décodage et affichage
Nous disposons de deux mots binaires. Un pour les unités, fourni
par le circuit intégré U1, et un autre pour les dizaines,
fourni par U3. Nous voulons afficher ces mots binaires en chiffres
arabes, que nous connaissons bien : 0, 1, 2, ... jusqu'à 9. Pas
de mystère, il nous faut un composant qui assure une "interface
de langage". Ouf, ça existe tout fait, et ça s'appelle un
décodeur BCD / 7 segments. Ca aurait pû être pire.
Il existe plusieurs types de décodeurs assurant cette fonction,
mon choix s'est porté sur un CD4543. Je l'aime bien,
celui-là, car il dispose d'une entrée de sélection
qui permet d'inverser la logique de sortie (celle qui pilote les
afficheurs), et qui permet de ce fait d'utiliser des afficheurs
à anode commune ou à cathode commune. Dans notre cas,
nous utilisons des afficheurs à cathode commune. Notez la
simplicité de la chose : on entre sur ce circuit un mot binaire
(A, B, C et D), et il ressort un mot décimal spécialement
adapté pour affichage sur sept segments (A, B, C, D, E, F et G).
Trop de courant dans les LED ?
Le
schéma qui précède indique que le montage est alimenté sous
une
tension de 9 V, et les résistances de limitation ajoutées pour limiter
le courant dans les
segments LED des afficheurs valent 390 ohms. En utilisant des LED
rouges
de tension nominale 1,6 V, le courant qui circule dans un segment
Iled est grosso-modo de :
ILed = (9 - 1,6) / 390 = 19 mA
Il
s'agit bien sûr d'une erreur de ma part, puisque sous 9 V le CD4543 ne
peut pas débiter plus de 10 mA par sortie. Le fait est que cette valeur
de 390 ohms avait été établie pour une tension d'alim de 5 V (courant
de 8 mA). Pour une tension d'alim de 9 V, il convient d'augmenter la
valeur de ces résistances de limitation de courant. Pour 8 mA, cela
donne :
R = (9 - 1,6) / 0,008 = 925 ohms (disons 1 kO)
Il existe
maintenant des afficheurs qui sont très lumineux même avec des courants
plus faibles, entre 1 mA et 5 mA. Si vous utilisez de tels afficheurs,
augmenter encore plus la valeur de ces résistances de limitation. Pour
3 mA par exemple, passez à 2,2 kO.
Important
: les circuits que
j'ai utilisés pour ce montage proviennent
du fabricant ON-Semiconductor, les sorties peuvent débiter un maximum
de 10 mA. Ce n'est pas
forcément le cas de circuits CD4543 provenant d'autres
fabricants
! Pour beaucoup de circuits CMOS, le courant max ne dépasse guère 1
ou 2 mA par sortie. En cas de doute, consulter les
caractéristiques techniques de vos composants (datasheet).
Je reconnais avoir joué un peu avec le feu, car la valeur de 10 mA
est une valeur max à ne pas dépasser, et que mes 8 mA n'en sont pas
loin.
Prototype
Rien de spécial à dire.
Version à deux
afficheurs (00 à 99)
Ah si : sur le schéma, on voit des résistances
entre les
sorties des décodeurs BCD / 7 segments CD4543 et les afficheurs (les
fameuses 390 ohms qui feraient moins de mal au système si elles
valaient 1 kO). Sur
le proto pourtant, on n'en voit aucune. Et curieusement l'ensemble se
comporte bien, pas d'echauffement excessif et pas de fumée. Etrange,
non ?
Oui, j'aime parfois prendre des risques ;-)
Réduction à un seul afficheur
Il est tout à fait possible de supprimer la moitié des
composants, si l'affichage est limité à la plage 0
à 9. C'est ce que montre le schéma suivant.
Retenez
bien ce que j'ai écris auparavant concernant les sept résistances de
limitation de courant de l'afficheur. Cela s'applique aussi à ce schéma.
Extension d'affichage
Extension désirée pour affichage jusqu'à 999 ?
Possible aussi, il suffit de chaîner un troisième compteur
CD4029 au deuxième déjà en place, c'est à
dire de relier la sortie CO du compteur précédent sur son
entrée CLK, et de lui adjoindre sa propre section de
décodage BCD / sept segments (CD4543).
Pour un affichage jusqu'à 9999, ajouter un quatrième CD4029, un quatrième CD4543 et un quatrième afficheur sept
segments, selon le même principe de câblage. Comme vous pouvez le
constater, ce n'est que de la recopie. Et puis, dois-je insister sur la
valeur des résistances de limitation de courant des afficheurs ?
Historique
21/08/2016
- Correction valeur résistances de limitation de courant dans les LED,
qui étaient un peu justes pour une utilisation sous 9 V.
09/12/2007
- Première mise à disposition.