8279 可编程键盘


8279 可编程键盘/显示控制器由 Intel 设计,用于键盘与 CPU 的连接。键盘首先扫描键盘并识别是否有按键被按下。然后,它将按键的相对响应发送到 CPU,反之亦然。

键盘与CPU有多少种接口方式?

键盘可以以中断或轮询模式连接。在中断模式下,只有按下任意键时才向处理器请求服务,否则CPU将继续执行其主要任务。

轮询模式下,CPU 会定期读取内部标志 8279,以检查是否有按键被按下。

8279 键盘如何工作?

键盘最多有 64 个按键,通过键码与 CPU 接口。这些键码经过去抖处理并存储在 8 字节 FIFORAM 中,可供 CPU 访问。如果 FIFO 中输入的字符超过 8 个,则意味着一次按下的键超过 8 个。这是设置溢出状态的时间。

如果 FIFO 包含有效的键条目,则 CPU 以中断模式中断,否则 CPU 以轮询方式检查状态以读取该条目。一旦 CPU 读取了一个按键条目,就会更新 FIFO,并将该按键条目推出 FIFO,为新条目生成空间。

架构与描述

8279 建筑

I/O 控制和数据缓冲区

该单元控制通过微处理器的数据流。仅当 D 为低电平时才启用。其数据缓冲器将系统的外部总线与微处理器的内部总线连接起来。引脚 A0、RD 和 WR 用于命令、状态或数据读/写操作。

控制和时序寄存器和时序控制

该单元包含用于存储键盘、显示模式和 CPU 编程的其他操作的寄存器。定时和控制单元处理电路操作的定时。

扫描计数器

它有两种模式,即编码模式和解码模式。在编码模式下,计数器提供二进制计数,该二进制计数将被外部解码以提供键盘和显示器的扫描线。

解码扫描模式下,计数器对最低有效2 位进行内部解码,并在SL 0 -SL 3上提供解码后的4 中1 扫描。

返回缓冲区、键盘去抖和控制

该单元首先逐行扫描按键闭合,如果找到,则键盘防抖单元对键输入进行防抖。如果检测到相同的按键,则该按键的代码连同 SHIFT & CONTROL 键状态一起直接传输到传感器 RAM。

FIFO/传感器 RAM 和状态逻辑

该单元充当 8 字节先进先出 (FIFO) RAM,其中每个按下的按键的按键代码按照其顺序输入到 RAM 中。每次 FIFO 读操作后,状态逻辑都会生成一个中断请求,直到 FIFO 变空。

在扫描传感器矩阵模式下,该单元充当传感器 RAM,其中每一行都将相应行传感器的状态加载到矩阵中。当传感器改变其状态时,IRQ 线变为高电平并中断 CPU。

显示地址寄存器和显示 RAM

该单元由显示地址寄存器组成,该寄存器保存当前由 CPU 向/从显示 RAM 读取/写入的字的地址。

8279 - 引脚说明

下图为8279的引脚图 -

8279 引脚图

数据总线,DB 0 - DB 7

这些是 8 条双向数据总线,用于将数据传输到 CPU 或从 CPU 传输数据。

时钟脉冲

时钟输入用于生成微处理器所需的内部时序。

重置

顾名思义,该引脚用于重置微处理器。

CS 片选

当该引脚设置为低电平时,允许读/写操作,否则该引脚应设置为高电平。

一个0

该引脚指示命令/状态信息的传输。当为低电平时,表示有数据传输。

读、写

该读/写引脚使数据缓冲器能够通过数据总线发送/接收数据。

中断请求

当 FIFO 传感器 RAM 中有数据时,该中断输出线变高。每次 FIFO RAM 读取操作时,中断线都会变低。然而,如果 FIFO RAM 还包含任何要由 CPU 读取的键代码条目,则该引脚会再次变高以向 CPU 生成中断。

电压_ _ _

这些是微处理器的接地线和电源线。

SL 0 – SL 3

这些是用于扫描键盘矩阵并显示数字的扫描线。可以使用模式控制寄存器将这些线编程为编码或解码。

RL 0 – RL 7

这些是返回线,连接到按键的一个端子,而按键的另一端子连接到解码的扫描线。当按下任意键时,这些行将设置为 0。

转移

在扫描键盘模式下,Shift 输入线状态与每个键码一起存储在 FIFO 中。直到通过按键关闭将其拉低为止,它会在内部上拉以保持高电平

CNTL/STB - 控制/选通 I/P 模式

在键盘模式下,该线用作控制输入并存储在按键闭合时的 FIFO 中。该线是选通线,在选通输入模式下将数据输入 FIFO RAM。它有一个内部上拉电阻。通过钥匙闭合将线拉下。

BD

它代表空白显示。它用于在数字切换期间消隐显示。

OUTA 0 – OUTA 3和 OUTB 0 – OUTB 3

这些是两个 16x4 或一个 16x8 内部显示刷新寄存器的输出端口。来自这些线的数据与扫描线同步以扫描显示器和键盘。

8279的操作模式

8279 有两种操作模式:输入模式输出模式

输入模式

该模式处理键盘给出的输入,该模式进一步分为 3 种模式。

  • 扫描键盘模式- 在此模式下,可以使用编码或解码扫描来连接按键矩阵。在编码扫描中,可以连接8×8键盘,或者在解码扫描中,可以连接4×8键盘。SHIFT 和 CONTROL 状态下按下的按键代码存储到 FIFO RAM 中。

  • 扫描传感器矩阵- 在此模式下,传感器阵列可以使用编码器或解码器扫描与处理器连接。在编码器扫描中,可以连接8×8传感器矩阵或与解码器扫描4×8传感器矩阵连接。

  • 选通输入- 在此模式下,当控制线设置为 0 时,返回线上的数据逐字节存储在 FIFO 中。

输出方式

该模式处理与显示相关的操作。该模式又分为两种输出模式。

  • 显示扫描- 此模式允许将 8/16 字符多路显示组织为双 4 位/单 8 位显示单元。

  • 显示输入- 此模式允许从右侧/左侧输入数据以进行显示。