8279 - Teclado Programável

8279 teclado programável / controlador de tela projetado pela Intel que faz interface de um teclado com a CPU. O teclado primeiro verifica o teclado e identifica se alguma tecla foi pressionada. Em seguida, ele envia sua resposta relativa da tecla pressionada para a CPU e vice-a-versa.

De quantas maneiras o teclado é conectado à CPU?

O teclado pode ser conectado no modo de interrupção ou em polled. NoInterrupt mode, o processador é solicitado o serviço apenas se alguma tecla for pressionada, caso contrário, a CPU continuará com sua tarefa principal.

No Polled mode, a CPU lê periodicamente um sinalizador interno de 8279 para verificar se alguma tecla foi pressionada ou não com a pressão da tecla.

Como funciona o teclado 8279?

O teclado consiste em no máximo 64 teclas, que têm interface com a CPU usando os códigos de tecla. Esses códigos-chave são devolvidos e armazenados em um FIFORAM de 8 bytes, que pode ser acessado pela CPU. Se mais de 8 caracteres forem inseridos no FIFO, isso significa que mais de oito teclas são pressionadas ao mesmo tempo. É quando o status de saturação é definido.

Se um FIFO contém uma entrada de chave válida, a CPU é interrompida em um modo de interrupção, caso contrário, a CPU verifica o status em polling para ler a entrada. Assim que a CPU lê uma entrada chave, o FIFO é atualizado e a entrada chave é empurrada para fora do FIFO para gerar espaço para novas entradas.

Arquitetura e Descrição

Controle de E / S e Buffer de Dados

Esta unidade controla o fluxo de dados através do microprocessador. É habilitado apenas quando D é baixo. Seu buffer de dados faz a interface do barramento externo do sistema com o barramento interno do microprocessador. Os pinos A0, RD e WR são usados ​​para operações de comando, status ou leitura / gravação de dados.

Registro de controle e tempo e controle de tempo

Esta unidade contém registros para armazenar o teclado, modos de exibição e outras operações programadas pela CPU. A unidade de tempo e controle controla os tempos de operação do circuito.

Scan Counter

Tem dois modos, ou seja Encoded modee modo decodificado. No modo codificado, o contador fornece a contagem binária que deve ser decodificada externamente para fornecer as linhas de varredura para o teclado e a tela.

No decoded scan mode, o contador decodifica internamente os 2 bits menos significativos e fornece uma varredura decodificada 1 de 4 em SL 0 -SL 3 .

Buffers de retorno, debounce do teclado e controle

Esta unidade primeiro faz a varredura do fechamento da tecla em linha, se encontrada, a unidade de debounce do teclado desfaz a entrada da tecla. Caso a mesma chave seja detectada, o código dessa chave é transferido diretamente para a RAM do sensor junto com o status da chave SHIFT e CONTROL.

FIFO / RAM do Sensor e Lógica de Status

Esta unidade atua como RAM de 8 bytes primeiro a entrar, primeiro a sair (FIFO), onde o código de cada tecla pressionada é inserido na RAM de acordo com sua sequência. A lógica de status gera uma solicitação de interrupção após cada operação de leitura do FIFO até que o FIFO fique vazio.

No modo de matriz de sensor digitalizado, esta unidade atua como RAM de sensor, onde cada linha é carregada com o status de sua linha de sensores correspondente na matriz. Quando o sensor muda de estado, a linha IRQ muda para alto e interrompe a CPU.

Exibir registros de endereços e exibir RAM

Esta unidade consiste em registradores de endereço de exibição que armazenam os endereços da palavra atualmente lida / escrita pela CPU de / para a RAM de exibição.

8279 - Descrição do pino

A figura a seguir mostra o diagrama de pinos de 8279 -

Linhas de barramento de dados, DB 0 - DB 7

São 8 linhas de barramento de dados bidirecionais usadas para transferir os dados de / para a CPU.

CLK

A entrada do relógio é usada para gerar temporizações internas exigidas pelo microprocessador.

REDEFINIR

Como o nome sugere, este pino é usado para reiniciar o microprocessador.

CS Chip Select

Quando este pino é definido como baixo, ele permite operações de leitura / gravação, caso contrário, este pino deve ser definido como alto.

A 0

Este pino indica a transferência de informações de comando / status. Quando está baixo, indica a transferência de dados.

RD, WR

Este pino de leitura / gravação permite que o buffer de dados envie / receba dados pelo barramento de dados.

IRQ

Esta linha de saída de interrupção fica alta quando há dados na RAM do sensor FIFO. A linha de interrupção fica baixa com cada operação de leitura da RAM FIFO. No entanto, se a RAM FIFO contiver ainda qualquer entrada de código-chave a ser lida pela CPU, este pino novamente fica alto para gerar uma interrupção para a CPU.

V ss , V cc

Essas são as linhas de aterramento e de alimentação do microprocessador.

SL 0 - SL 3

Estas são as linhas de varredura usadas para varrer a matriz do teclado e exibir os dígitos. Essas linhas podem ser programadas como codificadas ou decodificadas, usando o registro de controle de modo.

RL 0 - RL 7

Estas são as linhas de retorno que são conectadas a um terminal de chaves, enquanto o outro terminal das chaves é conectado às linhas de varredura decodificadas. Essas linhas são definidas como 0 quando qualquer tecla é pressionada.

MUDANÇA

O status da linha de entrada Shift é armazenado junto com cada código de tecla em FIFO no modo de teclado digitalizado. Até que seja puxado para baixo com um fecho de chave, é puxado para cima internamente para mantê-lo alto

CNTL / STB - Modo I / P CONTROL / STROBED

No modo teclado, esta linha é usada como uma entrada de controle e armazenada em FIFO em um fechamento de tecla. A linha é uma linha estroboscópica que insere os dados na RAM FIFO, no modo de entrada estroboscópica. Ele tem um puxador interno para cima. A linha é puxada para baixo com um fechamento com chave.

BD

Significa display em branco. É usado para apagar o display durante a troca de dígitos.

OUTA 0 - OUTA 3 e OUTB 0 - OUTB 3

Estas são as portas de saída para dois registros de atualização de tela interna 16x4 ou 16x8. Os dados dessas linhas são sincronizados com as linhas de varredura para varrer a tela e o teclado.

Modos operacionais de 8279

Existem dois modos de operação no 8279 - Input Mode e Output Mode.

Modo de entrada

Este modo lida com a entrada fornecida pelo teclado e este modo é classificado em 3 modos.

  • Scanned Keyboard Mode- Neste modo, a matriz-chave pode ser conectada usando varreduras codificadas ou decodificadas. Na varredura codificada, um teclado 8 × 8 ou na varredura decodificada, um teclado 4 × 8 pode ser conectado. O código da tecla pressionada com o status SHIFT e CONTROL é armazenado na RAM FIFO.

  • Scanned Sensor Matrix- Neste modo, uma matriz de sensor pode ser conectada ao processador usando varreduras do codificador ou do decodificador. Na varredura do codificador, a matriz do sensor 8 × 8 ou com a varredura do decodificador 4 × 8 da matriz do sensor pode ser interfaceada.

  • Strobed Input - Neste modo, quando a linha de controle é definida como 0, os dados nas linhas de retorno são armazenados no FIFO byte a byte.

Modo de saída

Este modo lida com operações relacionadas ao display. Este modo é classificado em dois modos de saída.

  • Display Scan - Este modo permite que monitores multiplexados de 8/16 caracteres sejam organizados como unidades de exibição duplas de 4 bits / simples de 8 bits.

  • Display Entry - Este modo permite que os dados sejam inseridos para exibição do lado direito / esquerdo.