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.