Dernière mise à jour : 13/09/2009
Présentation
Dans un système d'affichage, le multiplexage est
un procédé qui consiste à utiliser plusieurs
voyants ou plusieurs afficheurs et à ne pas tous les allumer à la fois,
en vue
d'économiser de l'énergie et de limiter le nombre de fils de câblage.
Par exemple, l'affichage de votre radio réveil numérique, de votre
machine à laver ou de votre four micro-onde est fort probablement
multiplexé.
Principe de fonctionnement
Le
principe est fort simple à comprendre, surtout si vous savez déjà que
la vidéo que vous regardez sur une télé est constituée d'une suite
d'images, qui elles-mêmes sont constituées de plusieurs lignes, chaque
ligne étant quant à elle composée de plusieurs points individuels (non,
ce n'est pas tant hors sujet que ça peut sembler l'être). Les
points sont allumés à tour de rôle, les lignes sont dessinées les unes
après les autres, et les images se succèdent rapidement, à une cadence
de 25 images par secondes (en réalité 50 trames par secondes, mais on
ne vas pas entrer dans les détails). Bref, à un instant donné, un seul
point de l'image est éclairé sur votre télé, et pourtant vous voyez une
image
complète. Pourquoi ? Parce que tout se passe très vite, à tel point que
votre oeil n'arrive pas à suivre. La raison pour laquelle cela est fait
comme ça est lié à l'histoire de la télévision et à la technique alors
employée, qui ne permettait de transmettre qu'un seul point à la fois.
Pour tromper le téléspectateur, il faut envoyer les points les un après
les autres à très grande vitesse (là encore je simplifie car en
télévision analogique, on ne transmet pas des points mais des tensions
continues qui varient dans le temps; mais au niveau de l'analyse de
l'image effectuée dans la caméra et au niveau du téléviseur qui
restitue cette image, il est bien question de points finis). Mais vous
devez vous demander quel rapport il peut bien exister entre télévision
et afficheurs sept segments... Celui de la persistance rétinienne. Pour
que l'oeil et le cerveau n'y voient que du feu, c'est à dire pour qu'il
ne se rende pas compte que tout n'est pas affiché en même temps, il
faut que la cadence d'affichage aille au-delà d'une certaine vitesse,
qui est voisine de 20 Hz. Les anciens films tournés à 15 images par
seconde rendent parfaitement le côté saccadé ou "scintillant" que l'on
a cherché par la suite à éliminer pour diminuer la fatigue visuelle due
à ce défaut. Les téléviseurs 50 Hz on fait leur apparition (affichage
doublé de chaque image d'origine), et les écrans d'ordinateur affichent
actuellement entre 60 et 100 images par seconde. Pour revenir à nos
moutons, l'affichage d'un
nombre de 0000 à 9999 implique l'emploi de quatre afficheurs, et si
chacun est
allumé à tour de rôle, il faut que ce soit rapide.
Multiplexage "simple"
On
peut avoir interêt à utiliser le multiplexage dès l'instant où on
utilise au moins deux afficheurs. Le schéma suivant montre l'exemple
d'un circuit permettant d'afficher un nombre compris entre 000 et 999,
à l'aide de trois afficheurs
à leds
sept segments. Une façon simple de faire (sans multiplexage) est
d'attaquer les trois afficheurs de façon séparée, ce qui porte le
nombre total de fils de commande à 24, en tenant compte de l'électrode
commune des afficheurs. Le schéma qui suit montre ainsi comment
afficher le nombre 274 en mode non multiplexé.
Etat haut = H = Rouge
Etat bas = L = Bleu

Affichage sans multiplexage
Avec le
schéma qui précède, les trois afficheurs sont alimentés en continu, et
la consommation globale est maximale pour l'affichage du nombre 888
(tous les segments sont alors allumés). Regardons maintenant le schéma
suivant, qui met en oeuvre le multiplexage.

Affichage avec multiplexage
Le
nombre total de fils de commande est passé de 24 à 10, pour un nombre
identique d'afficheurs. Ce qui est loin
d'être négligeable, sachant que parfois un seul fil de gagné
permet de se sortir d'une situation "embêtante". Et encore, nous
n'avons affaire ici qu'à trois afficheurs. Avec un système à quatre
afficheurs, on passe de 32 fils de commande à 11 fils seulement (ou
même de 36 fils à 12 fils si on ajoute le point décimal sur chaque
afficheur) ! Maintenant, détaillons le fonctionnement du système. Dans
le cas du système non multiplexé, les trois afficheurs étaient
alimentés en même temps, ce
n'est plus le cas maintenant. Les fils de commande qui permettent
d'allumer les segments A à G sont reliés en même temps
à tous les afficheurs, mais les points
communs des segments sont quant à eux pilotés à part au travers des
fils C1, C2 et C3. Les trois vues
qui suivent montrent que l'on active en fait un seul afficheur à la
fois, en
lui faisant allumer les seuls segments nécessaires pour le chiffre qui
le concerne. Dans le cas présent, on souhaite l'affichage du nombre
274, le premier afficheur doit donc afficher le chiffre 2, le
second afficheur doit afficher le chiffre 7 et le dernier
afficheur doit montrer le chiffre 4. L'affichage du nombre 274
s'effectue ainsi en trois étapes, qui sont les suivantes :
1
- Activation de l'afficheur n° 1 (cathode commune à la masse au travers
de la jonction E-C de Q3), et activation des segments B et C.
2 - Activation de l'afficheur n° 2 (cathode commune à la masse au
travers de la jonction E-C de Q2), et activation des segments A, B et C.
3 - Activation de l'afficheur n° 3 (cathode commune à la masse au
travers de la jonction E-C de Q1), et activation des segments B, C, F
et G.
Puis on retourne au point 1, et ainsi de suite.

Affichage du chiffre 2 - Mise en
conduction de Q3

Affichage du chiffre 7 - Mise en conduction de Q2

Affichage du chiffre 4 - Mise en conduction de Q1
Vous
l'avez compris, si on activait en même temps les trois afficheurs,
chacun afficherait le même chiffre, et le nombre affiché ne serait pas
celui attendu.
Remarque
: avec un tel mode d'affichage, on peut fort bien utiliser une
combinaison d'afficheurs numériques et de LEDs isolées. C'est ce que
j'ai fait par exemple avec mon thermomètre 003.
Exemple de proto avec quatre afficheurs 7 segments
J'ai réalisé le proto suivant pour tester mes circuits mettant en
oeuvre le multiplexage d'afficheurs sept segments. Les afficheurs sont
montés sur des supports en barrette sécable, ce qui
me permet de mettre aisement des afficheurs à anode commune ou à
cathode commune.
Plus de détail concernant ce circuit d'affichage à la page Afficheur LED sept segments 003.

Il est parfois rigolo de prendre en photo un affichage
multiplexé. Si le temps "d'ouverture" du système de prise
de vue est trop court par rapport à la fréquence de
balayage des afficheurs, tous les chiffres ne sont pas imprimés
sur la pellicule ou sur l'image numérique, comme peuvent en
témoigner les photos suivantes, prises avec un APN lors d'essais
effectués sur mon chronomètre 001.

Les photos sont sombres parce que prises le soir avec pour seul éclairage un flash bien peu efficace...
Exemple de proto avec module afficheur 4 digits 7 segments
Les
quatres afficheurs individuels vus ci-avant peuvent être remplacés par
un module d'affichage multiple tel un afficheur 4 digits 7 segments.
C'est ce que j'ai fait pour mon afficheur LED sept segments 007.

Multiplexage "multiple"
Il
existe d'autres procédés de multiplexage, permettant de réduire encore
plus le nombre de fils de commande, mais qui ne conviennent pas pour
des afficheurs dont les segments possèdent un point commun (anode
commune ou cathode commune). Par exemple, il est possible de piloter 12
leds différentes avec seulement 4 fils de commande, comme le suggère le
schéma suivant.

Mais
pour que ce type de câblage puisse fonctionner, on ne peut pas se
contenter de travailler seulement avec des niveaux logiques hauts (par
exemple +5 V) et des niveaux logiques bas (0 V). Il faut en plus avoir
à disposition un troisième état logique, qui est un état logique
"inexistant". Je vous rassure tout de suite, il est très facile de
disposer de cet état logique "inexistant", qui ne correspond à rien
d'autre qu'à un circuit ouvert (en électronique, on nomme aussi cet
état "état haute impédance"). Le principe est donc aussi simple que
cela : chaque borne de chaque led du schéma précédent peut être portée
soit à un état logique bas, soit à un état logique haut... soit à rien
du tout ! Vous pouvez faire le compte des possibilités qu'offrent 4
fils de commande, vous trouverez bien 12 solutions possibles (en fait
6 solutions possibles, mais possibilité de câbler deux leds tête-bêche
pour chacune), que le
tableau suivante résume pour vous éviter tout mal de crâne.
Etat haut = H = Rouge
Etat bas = L = Bleu
Etat haute impédance = Z = Gris
| Led allumée |
A |
B |
C |
D |
| D1 |
H |
L |
Z |
Z |
| D2 |
L |
H |
Z |
Z |
| D3 |
H |
Z |
L |
Z |
| D4 |
L |
Z |
H |
Z |
| D5 |
H |
Z |
Z |
L |
| D6 |
L |
Z |
Z |
H |
| D7 |
Z |
H |
L |
Z |
| D8 |
Z |
L |
H |
Z |
| D9 |
Z |
H |
Z |
L |
| D10 |
Z |
L |
Z |
H |
| D11 |
Z |
Z |
H |
L |
| D12 |
Z |
Z |
L |
H |
Exemple
: pour allumer la led D7, il faut appliquer un état logique haut sur B
(carré rouge), un état logique bas sur C (carré bleu), et A et D
doivent "rester en l'air" (carré gris).

D'autres
leds que D7 voient bien un niveau logique haut ou bas sur une de leurs
pattes, mais seule D7 voit ce qu'il faut sur ses deux pattes pour lui
permettre de s'illuminer. D8 aimerait sans doute bien s'allumer aussi,
mais elle est branchée "à l'envers" par rapport aux tensions
appliquées, et reste donc éteinte. Notons en passant que la tension
inverse appliquée à chaque led reste limitée par la tension directe de
la led qui est en parallèle tête-bêche. Exemples pratiques en pages Voltmètre 006 et Vumètre 012.
Multiplexage en colonne
Il existe certaines réalisations qui
possèdent un très grand nombre de leds montées en "matrice" (plusieures
rangées et plusieures colonnes) servant à afficher des caractères
alphanumériques constituant un message de type texte. Il s'agit de
journaux lumineux comportant parfois plusieurs centaines de leds (un modèle en cours de fabrication).

Avec
ce type de montage, le multiplexage est presque imposé de fait, à cause
de la consommation électrique excessive à laquelle il faudrait
autrement se plier.