Multiplexage des afficheurs SYS80

Pinup
Multiplexage afficheurs

Etude du multiplexage.

Principe du fonctionnement des afficheurs en SYSTEM 80 et 80A.

Analyse et chronogrammes détaillés.

Analyse des signaux

Pour cette étude nous utilisons un analyseur logique 34 voies branché sur la carte CPU. Afin d'isoler le signal INT du circuit U5 (6532), une diode 1N4148 et une résistance ont été intercalées entre la broche de ce circuit et celle du 6502.

Analyseur logique LWLA1014 sur la carte CPU: Analyseur logique LWLA1014 sur la carte CPU

Fonctionnement général

Le multiplexage des afficheurs utilise plusieurs groupes de signaux qui permettent de gérer jusqu'a 48 chiffres. A un instant donné, seuls trois chiffres sont affichés (ce qui correspond aux groupes A, B, C). Les signaux de strobe (D1 à D16) commandent ensuite séquentiellement dans le temps, les autres chiffres (toujours par groupes de trois).

Chronogramme général en SYSTEM 80: Chronogramme général en SYSTEM 80

On peut voir dans ce chronogramme, que les signaux D1 à D16 évoluent séquentiellement, leur cadencement étant réalisé par des interruptions venant du timer de U5 (6532).

La durée totale de la séquence est de 16,2 ms, soit une fréquence de rafraichissement de 62 Hz.

Zoom sur le pilotage d'un strobe: Vue détaillée pour deux strobes

Chaque strobe reste actif pendant environ 1 ms, ce qui est également la fréquence "moyenne" des interruptions du timer U5.

Le traitement de ces interruptions dure en moyenne 340 µs, sauf pour les quatre derniers strobes (D13...D16) où elle est un peu plus courte, de l'ordre de 230 µs. Ceci est normal, car les groupes A et B ne sont pas commandés. Ils ne sont pas utilisés en SYSTEM 80 où l'on a besoin que des petits afficheurs à 4 chiffres (seul le groupe C est neccéssaire).

En SYSTEM 80, le multiplexage est donc réduit à 40 chiffres maximun.

Détails d'une interruption

Lorsqu'une interruption survient sur le timer U5, le CPU doit traiter le strobe suivant et présenter les nouveaux chiffres aux latches 74175.

En réalité, la durée de traitement de l'interruption est variable car plusieurs opérations sont réalisées, comme par exemple, la gestion du clignotement. Malgré ces variations, le temps global sur 16 interruptions est relativement stable.

Le timer U5 est rechargé en fin d'interruption afin de déclencher la suivante après un interval fixe de 700 µs (temps alors disponible pour les autres traitements).

Traitement d'une interruption: Traitement d'une interruption, exemple: passage du strobe D8 à D9

Comme on le voit sur ce chronogramme, ces opérations s'éffectuent en plusieurs temps. Ce séquencement est dû à la conception électronique du circuit, qui ne permet pas de tout réaliser simultanément. En outre, certains signaux sont mémorisés (chiffres dans les 74175) alors que d'autres non (segments H).

  • Dans un premier temps, alors que le strobe précédent est toujours actif (ici D8):
    • Remise à zéro des signaux CLK des 74175 (donc inactifs)
    • Présentation d'une donnée "F" en entrée (en vue d'éteindre les afficheurs)
    • Sortie simultanée d'un signal CLK à 1 sur les trois 74175, ce qui éteint les afficheurs
    • Les trois sorties des segments H sont également remise à zéro à cet instant
  • Dans un second temps, on bascule sur le strobe suivant (ici D9):
    • Sortie de la nouvelle valeur du strobe et remise à zéro des signaux CLK des 74175
    • Sortie de la donnée à afficher pour le groupe C, puis mise à 1 du CLK 74175 du groupe C
    • Sortie de la donnée à afficher pour le groupe B, puis mise à 1 du CLK 74175 du groupe B
    • Sortie de la donnée à afficher pour le groupe C, puis mise à 1 du CLK 74175 du groupe A
    • Les trois sorties des segments H sont ensuite positionnées simultanément
On peut remarquer que le CLK du groupe précédent n'étant remis à zéro qu'avec le groupe suivant, le dernier traité reste à 1.

En théorie, comme les trois groupes sont éteints simultanément, mais sont ensuite commandés séquentiellement, leur durée d'affichage est donc légérement différente. Leur luminosité n'est donc pas tout à fait la même, puisque le groupe C est allumé 60 µs avant le groupe B, lui-même allumé 60 µs avant le groupe A. En pratique, cette différence n'est pas perceptible à l'oeil.

Les segments "H"

Les afficheurs Gottlieb utilisent un segment additionnel "H" par rapport aux afficheurs classiques à 7 segments. Celui-ci permet d'afficher un "1" centré, au lieu des segments "B" et "C" utilisés habituellement.

La gestion de ce segment est confié au CPU qui l'applique systèmatiquement à tous les chiffres. Les petits afficheurs à 4 chiffres ne disposant pas de ce segment H, un circuit électronique leur a été ajouté (74132) afin de regénerer les segments "B" et "C" pour former le "1".

Le traitement des segments H est réalisé comme pour les autres chiffres, lors de chaque interruption.

Traitement des segments H: Traitement des segments H

A la différence des chiffres mémorisés dans les 74175, les segments H sont pilotés directement par le 6532.

  • Dans un premier temps, les segments H sont éteints alors que le strobe précédent est toujours actif.
  • Dans un second temps, lorsqu'on a basculé sur le strobe suivant, les trois segments H sont activés en dernier.
On peut remarquer que les trois segments H sont présentés simultanément, à la fin de l'interruption.

Dans cet exemple, les chiffres des groupes B et C sont éteints, le groupe A doit afficher un "1". On remarque que la valeur présentée au 74175 pour le groupe A est bien un "F" (éteint) et non un "1".

Strobes D13...D16

A la différence des strobes D1...D12 où les trois groupes (C, B et A) sont utilisés, seul le groupe C est adressé avec les strobes D13...D16.

Traitement pour D13...D16: Strobes D12 et D13

Il en résulte que la durée du traitement de l'interruption est réduite à 230 µs au lieu des 340 µs.

Evolutions en SYSTEM 80A

Sur ce système, afin d'afficher les chiffres supplémentaires, les trois groupes (C, B et A) sont aussi utilisés avec les strobes D13...D16.

Chronogramme général en SYSTEM 80A: Chronogramme général en SYSTEM 80A

La durée moyenne de traitement des interruptions est alors de 360 µs pour D1...D12 et de 520 µs pour D13...D16.

Pour tenir compte de cet allongement des temps de traitement, l'interval du timer U5 a été réduit à 605 µs. La durée totale de la séquence est de 16 ms, la fréquence de rafraichissement est donc toujours d'environ 62 Hz.

SYSTEM 80A amélioré

Sur nos systèmes 80A, nous avons corrigé un bug dans l'affichage 7 chiffres.

Chronogramme général en SYSTEM 80A amélioré: Chronogramme général en SYSTEM 80A amélioré

La séquence est semblable à celle du 80A, mais la durée moyenne de traitement des interruptions est de 350 µs pour D1...D12 et de 600 µs pour D13...D16.

La durée totale de la séquence est de 16,3 ms, la fréquence de rafraichissement est donc toujours d'environ 62 Hz.

Le bug corrigé est au niveau des strobes D13...D16, la séquence de traitement correspondante s'en trouve allongée.

Traitement des strobes D13...D16: Traitement des strobes D13...D16

Dernière mise à jour de cette page: 8 Août 2018