8279 - Clavier programmable

Le contrôleur de clavier / affichage programmable 8279 est conçu par Intel qui interface un clavier avec le processeur. Le clavier scanne d'abord le clavier et identifie si une touche a été enfoncée. Il envoie alors leur réponse relative de la touche enfoncée au CPU et vice-versa.

De combien de façons le clavier est-il interfacé avec le processeur?

Le clavier peut être interfacé soit en mode interruption, soit en mode interrogé. dans leInterrupt mode, le processeur ne reçoit une demande de service que si une touche est enfoncée, sinon le CPU continuera sa tâche principale.

dans le Polled mode, la CPU lit périodiquement un drapeau interne de 8279 pour vérifier si une touche est enfoncée ou non avec une pression de touche.

Comment fonctionne le clavier 8279?

Le clavier se compose de 64 touches au maximum, qui sont interfacées avec le CPU en utilisant les codes de touches. Ces codes-clés sont annulés et stockés dans une FIFORAM de 8 octets, accessible par le CPU. Si plus de 8 caractères sont entrés dans la FIFO, cela signifie que plus de huit touches sont enfoncées à la fois. C'est à ce moment que l'état de dépassement est défini.

Si un FIFO contient une entrée de clé valide, alors la CPU est interrompue dans un mode d'interruption sinon la CPU vérifie l'état dans l'interrogation pour lire l'entrée. Une fois que la CPU lit une entrée de clé, la FIFO est mise à jour et l'entrée de clé est poussée hors de la FIFO pour générer de l'espace pour les nouvelles entrées.

Architecture et description

Contrôle E / S et tampon de données

Cette unité contrôle le flux de données à travers le microprocesseur. Il n'est activé que lorsque D est faible. Son tampon de données interface le bus externe du système avec le bus interne du microprocesseur. Les broches A0, RD et WR sont utilisées pour les opérations de commande, d'état ou de lecture / écriture de données.

Contrôle et registre de synchronisation et contrôle de synchronisation

Cet appareil contient des registres pour stocker le clavier, les modes d'affichage et d'autres opérations programmées par l'UC. L'unité de chronométrage et de commande gère les minutages pour le fonctionnement du circuit.

Compteur de scan

Il a deux modes ie Encoded modeet mode décodé. Dans le mode codé, le compteur fournit le compte binaire qui doit être décodé de manière externe pour fournir les lignes de balayage pour le clavier et l'affichage.

dans le decoded scan mode, le compteur décode en interne les 2 bits les moins significatifs et fournit un balayage décodé 1 sur 4 sur SL 0 -SL 3 .

Tampons de retour, anti-rebond du clavier et contrôle

Cette unité scanne d'abord la fermeture de clé par ligne, si elle est trouvée, l'unité anti-rebond du clavier résout l'entrée de clé. Dans le cas où la même clé est détectée, le code de cette clé est directement transféré dans la RAM du capteur avec l'état de la touche SHIFT & CONTROL.

RAM FIFO / capteur et logique d'état

Cette unité agit comme une mémoire RAM FIFO (first-in-first-out) de 8 octets où le code de chaque touche enfoncée est entré dans la RAM selon leur séquence. La logique d'état génère une demande d'interruption après chaque opération de lecture FIFO jusqu'à ce que la FIFO soit vide.

En mode matrice de capteurs scannés, cette unité agit comme une RAM de capteur où chaque rangée est chargée avec l'état de leur rangée correspondante de capteurs dans la matrice. Lorsque le capteur change d'état, la ligne IRQ passe à l'état haut et interrompt le processeur.

Afficher les registres d'adresses et afficher la RAM

Cette unité se compose de registres d'adresses d'affichage qui contiennent les adresses du mot actuellement lu / écrit par la CPU vers / depuis la RAM d'affichage.

8279 - Description des broches

La figure suivante montre le schéma des broches du 8279 -

Lignes de bus de données, DB 0 - DB 7

Il s'agit de 8 lignes de bus de données bidirectionnelles utilisées pour transférer les données vers / depuis la CPU.

CLK

L'entrée d'horloge est utilisée pour générer les synchronisations internes requises par le microprocesseur.

RÉINITIALISER

Comme son nom l'indique, cette broche est utilisée pour réinitialiser le microprocesseur.

CS Chip Select

Lorsque cette broche est réglée sur bas, elle permet les opérations de lecture / écriture, sinon cette broche doit être réglée sur haut.

A 0

Cette broche indique le transfert des informations de commande / état. Lorsqu'il est bas, cela indique le transfert de données.

RD, WR

Cette broche de lecture / écriture permet au tampon de données d'envoyer / de recevoir des données sur le bus de données.

IRQ

Cette ligne de sortie d'interruption passe à l'état haut lorsqu'il y a des données dans la RAM du capteur FIFO. La ligne d'interruption passe au niveau bas à chaque opération de lecture de la RAM FIFO. Cependant, si la RAM FIFO contient en outre une entrée de code clé à lire par la CPU, cette broche devient à nouveau haut pour générer une interruption vers la CPU.

V ss , V cc

Ce sont les lignes de masse et d'alimentation du microprocesseur.

SL 0 à SL 3

Ce sont les lignes de balayage utilisées pour balayer la matrice du clavier et afficher les chiffres. Ces lignes peuvent être programmées comme codées ou décodées, en utilisant le registre de contrôle de mode.

RL 0 - RL 7

Ce sont les lignes de retour qui sont connectées à un terminal de touches, tandis que l'autre terminal de touches est connecté aux lignes de balayage décodées. Ces lignes sont mises à 0 lorsqu'une touche est enfoncée.

DÉCALAGE

L'état de la ligne d'entrée Shift est stocké avec chaque code de touche dans FIFO en mode clavier scanné. Jusqu'à ce qu'il soit tiré bas avec une fermeture à clé, il est tiré vers le haut pour le maintenir haut

CNTL / STB - Mode CONTROL / STROBED I / P

En mode clavier, cette ligne est utilisée comme entrée de commande et stockée dans FIFO lors d'une fermeture de touche. La ligne est une ligne stroboscopique qui entre les données dans la RAM FIFO, en mode d'entrée stroboscopique. Il a une traction interne. La ligne est tirée vers le bas avec une fermeture à clé.

BD

Il signifie affichage vierge. Il est utilisé pour masquer l'affichage pendant la commutation de chiffres.

OUTA 0 - OUTA 3 et OUTB 0 - OUTB 3

Ce sont les ports de sortie pour deux registres de rafraîchissement d'affichage interne 16x4 ou un 16x8. Les données de ces lignes sont synchronisées avec les lignes de balayage pour balayer l'écran et le clavier.

Modes de fonctionnement du 8279

Il existe deux modes de fonctionnement sur 8279 - Input Mode et Output Mode.

Mode d'entrée

Ce mode traite de l'entrée donnée par le clavier et ce mode est en outre classé en 3 modes.

  • Scanned Keyboard Mode- Dans ce mode, la matrice de touches peut être interfacée à l'aide de balayages codés ou décodés. Dans le scan encodé, un clavier 8 × 8 ou dans le scan décodé, un clavier 4 × 8 peut être interfacé. Le code de la touche enfoncée avec l'état SHIFT et CONTROL est stocké dans la RAM FIFO.

  • Scanned Sensor Matrix- Dans ce mode, un réseau de capteurs peut être interfacé avec le processeur en utilisant des balayages d'encodeur ou de décodeur. Dans le balayage de l'encodeur, une matrice de capteurs 8 × 8 ou avec une matrice de capteurs 4 × 8 à balayage de décodeur peut être interfacée.

  • Strobed Input - Dans ce mode, lorsque la ligne de contrôle est mise à 0, les données sur les lignes de retour sont stockées dans la FIFO octet par octet.

Mode de sortie

Ce mode traite des opérations liées à l'affichage. Ce mode est en outre classé en deux modes de sortie.

  • Display Scan - Ce mode permet aux affichages multiplexés 8/16 caractères d'être organisés en deux unités d'affichage 4 bits / 8 bits simples.

  • Display Entry - Ce mode permet de saisir les données pour les afficher depuis le côté droit / gauche.