8279键盘显示
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据缓冲器 FIFO RAM 中的数据字节个数和是否出错。
D2D1D0——为 FIFO RAM 中数据的个数。 D3——表示 FIFO RAM 已满(有键按下,存有键码)。 D4——表示“不足”错误,即 FIFO RAM 已经置空,CPU 还企图进行读出 操作,则出现“不足”错误,D4 置“1”。 D5——表示“超出”错误,即 FIFO RAM 已经充满,CPU 还企图进行写入 操作,则出现“超出”错误,D5 置“1”。 D6——用于传感器矩阵输入方式,几个传感器同时闭合时置“1”。 D7——显示无效位(D7=1)。当显示 RAM 由于清除显示或全清除命令尚 未完成时,D7 应置“1”,这时对显示 RAM 的写操作无效。
D4D3D2=110 D4D3D2=111 D4D3D2=0**
显示 RAM 全部置“20H” 显示 RAM 全部置“1” 不清除显示 RAM
命令中的 D1 时清除标志位。D1=1,清除 FIFO 状态标志,FIFO 被置为
空状态(无数据),并复位中断请求线 IRQ。D0=1,总清除,包括 FIFO RAM
起始地址,数据写入按左输入或右输入方式进行。D4 位为自动增量标志,D4 =1 时,每次写入后地址自动加 1。
6)写入和消隐屏蔽命令(D7D6D5=101)
当接口双四位显示器时,这两个显示器应当时相互独立的,即只能对其
中的一个单独进行数据写入或消隐而不影响另一位。
命令中的 D4 不用,D3、D2 位用于写入屏蔽,D3=1 时,屏蔽 A 组,B 组可以写入数据且不影响 A 组;D2=1 时情况正好相反,两位同时为“1”
8279 共有 3 个可寻址的寄存器,即:命令寄存器、状态寄存器和数据寄存
器,但只对应两个地址。因为命令寄存器和状态寄存器可共用一个地址,在同一
地址下,写操作是针对命令寄存器,而读操作则是针对状态寄存器的。具体的命
令/状态寄存器和数据寄存器的地址由信号连接决定。
(1) 命令寄存器
命令寄存器为 8 位寄存器,以 D7D6D5D4D3D2D1D0 表示各位。其中高三位 (D7D6D5)是命令的特征位,不同的状态组合代表着不同的命令。在程序 设计中通过对命令寄存器的设置来控制 8279 的不同操作。
和显示 RAM。清除显示大约需要 100us,在此期间,单片机不能向显示 RAM
写入数据。
8)结束中断/错误方式设置命令(D7D6D5=111) 在传感器工作方式下,该命令用于结束传感器 RAM 的中断请求。此外,
该命令还用于设置一种特定的错误工作方式。
(2) 状态寄存器
8279 状态寄存器为 8 位,在键输入及选通输入方式中,用于指出键
成高电平,由外部键拉成低电平。
· CLK 外时钟输入端
系统的外时钟,由外部振荡电路提供。8279 靠芯片内部的定时器将外时钟
变为内时钟,即:内频=外频/定时值。内部时钟控制着扫描时间和去抖时间的
长短。当 8279 内频为 100kHz,则扫描时间为 5.1ms,去抖时间为 10.3ms。
3.8279 的寄存器
外部译码键扫描方式,双键互锁 内部译码键扫描方式,N 键依次读出 外部译码扫描传感器矩阵方式
D2D1D0=101 内部译码扫描传感器矩阵方式
D2D1D0=110 选通输入方式,外部译码扫描显示器方式 D2D1D0=111 选通输入方式,内部译码扫描显示器方式 内部译码方式,可接 4*8 键盘和 4 位 LED
扫描电路用于为键盘提供扫描信号,4 位扫描信号从扫描线 SL0~SL3 输 出,扫描信号可有两种输出形式,一种是内部译码方式,输出波形如图 3-a)所示, 即 SL0~SL3 提供的就是键盘扫描信号,可直接使用。另一种是外部译码形式, 输出波形如图 3-b)所示,此种形式下扫描信号要经过译码器扩充数目(最多 16)
(3) 数据寄存器
存储键码
D2D1D0——闭合键的列号(由 RL0-7 值确定)。 D5D4D3——闭合键的行号(扫描计数值)。 D6——换挡键 SHIFT 的状态。 D7——控制键 CNTL 的状态 注意:在传感器扫描方式和选通输入方式中,输入数据即为 RL0-7 的输入状 态。
4.8279 的接口应用
1)键盘/显示器设置命令(D7D6D5=000) 这时命令中 D4、D3 位用于显示器方式设置: D4D3=00 8*8 字符显示左边输入
D4D3=01 D4D3=10 D4D3=11
16*8 字符显示左边输入 8*8 字符显示右边输入 16*8 字符显示右边输入
CPU 向 8279 的显示用 RAM 写入显示数据时,分左边输入和右边输入两种
8279 可编程键盘/显示器接口芯片
1.概述
8279 是由 Intel 公司推出的一款可编程键盘和显示器专用(8255 为通用)并 行接口芯片,它可以代替单片机完成键盘和显示器的许多接口操作,从而大大减 轻单片机的负担,因此 8279 在单片机领域中应用较为广泛。
2. 8279 电路逻辑和信号引脚
8279 结构如图 1 所示
双向、三态数据缓冲器用于芯片内部总线和系统总线的连接,进行 CPU 和 8279 之间的数据传送,信号引脚 DB0-7。
② I/O 控制电路 用于接受 CPU 送来的控制信号,并产生所需的 8279 内部控制信号。
③ 中断请求产生电路 根据键盘存储区的状态产生中断请求信号。
2)键盘接口控制逻辑 ① 扫描电路
④ 键盘存储区 FIFO RAM 包括 8 个先进先出存储单元,用于存储闭合键的键码数据。
⑤ 时序和控制逻辑 用于对键盘扫描进行控制。
3)显示器接口控制逻辑 ① 8279 可连接 8~16 位 LED 显示器,8279 芯片中有一个 16*8 的 RAM, 其中每个 8 位 RAM 对应一位 LED,显示器的 0 位在最左边,15 位在最有边。 ② 显示缓冲器
8279 与 CPU 的连接如图 4 所示。
图 5. system block diagram
实验箱箱中的电路见 EL-MUT-III。
5.键盘扫描与 LED 显示简介
键闭合和断开时的电压抖动
(a)共阴极
(b)共阳极 行列式键盘电路原理图
(c)管脚配置(共阴极)
I/O口段选控制
a b c d e f Rdpa b c d e f Rdp a b c d e f Rdp a b c d e f Rdp a b c d e f Rdp
低位。
·
消隐输出线
低电平有效,当 LED 切换或使用显示消隐命令时,将 LED 消隐。
· RESET 复位信号
高电平有效,复位后 8279 被设置为:16 个 8 位字符显示为左端输入;编码
的扫描键为两键连锁;程序时钟分频器被置为 31H。
· SHIFT、CNTL/
键输入线
其中 SHIFT 为换档键,CNTL 为控制键, 为选通键。由内部上拉电阻拉
图 1. logic symbol
(1)8279 电路逻辑如图 2 所示。下面按功能把 8279 的电路逻辑分为芯片 接口控制逻辑、键盘接口控制逻辑和显示接口控制逻辑三部分来介绍。
图 2. internal block diagram
1)芯片接口控制逻辑,即实现 8279 和 CPU 接口的内容,包括: ① 数据缓冲器
后采取扫描。
a) 内部译码
b) 外部译码 图 3 扫描信号
② 扫描回送电路 输入每次扫描的列线状态(RL0~RL7),以进行闭合健的搜索。
③ 去抖及键码生成电路 8279 采用的是软件去抖,当有键闭合以后,去抖动触发器置位,启动延
时电路,大约 10ms,然后再测该键盘是否继续闭合,如果任然闭合则按键被确 认。由键码生成电路将该键的地址(行、列)和附加的换挡键、控制键的状态结 合起来,生成闭合键的键码数据,送入 FIFO 存储区中。
该信号有效。对 FIFO RAM 每次
读出时,该信号变为低电平。若
FIFO RAM 中还有数据就又变为高电平。
图 4. pin figuration
·RL0~RL7 键扫描返回输入线 时键扫描结果的输入线,由内部上拉电阻拉成高电平,由键盘上的按键拉成
低电平。
·SL0~SL3 扫描输出线
·OUTA0-3、OUTB0-3 显示段数据输出线 分开为两个半字节,合在一起为一个字。其中 OUTA3 为最高位,OUTB0 为最
4)读显示缓冲器命令(D7D6D5=011) 从 8279 向 CPU 读出显示数据(用于检查)之前,应先执行该命令。命
令中 D3~D0 表示起始地址,D4 位为自动增量标志,D4=1 时,每次读出后 地址自动加 1。
5)写显示数据命令(D7D6D5=100) 从 CPU 向 8279 写入显示数据之前,应先执行该命令。命令中 D3~D0 表示
时,则不进行屏蔽。D1D0 位用于消隐屏蔽,D1=1 时,屏蔽 A 组,B 组可
以消隐且不影响 A 组;D0=1 时情况正好相反,两位同时为“1”时则不进
行消隐屏蔽。
7)清除命令(D7D6D5=110) 用于清除显示、键输入标志和中断请求标志。D4D3D2 用于设置清除方式
D4D3D2=10* 显示 RAM 全部置“0”
…
3.8
3.8
3.8
3.8
3.8
I/O口位选控制
多位 LED 显示器
I/O(1)
D7
D6
D5
D4
D3
I/O(2)
八位 LED 动态显示器电路
D2
D1
D0
频率为 2MHz,为取得 100kHz 的内部时钟频率信号,应使 D4D3D2D1D0=10100B,
即 20D
3)读 FIFO RAM 命令(D7D6D5=010) CPU 从 8279 的 FIFO RAM 中读数据之前应先送入此命令。命令中,D2~
D0 用于设置起始地址,D4 用于设置地址自动增量标志。当 D4=1 时,从起 始地址开始读出,地址自动加 1,直到全部读完为止。D4=0 时,仅读出起 始地址一个单元的内容。
形式。其中左边输入比较简单和常用。在这种方式下,8279 从 0 地址或某一地
址开始依次将单元数据写入相应的显示器中。
命令中 D2、D1、D0 位用于键盘方式设置。 D2D1D0=000 外部译码键扫描方式,双键互锁 D2D1D0=001 内部译码键扫描方式,N 键依次读出
D2D1D0=010 D2D1D0=011 D2D1D0=100
外部译码方式,可接 8*8 键盘和 16 位 LED
选通输入方式是针对只有显示器而没有键盘情况下的一种工作方式,这时
RL0-7 作为选通输入口,CNTL/
作为信号输入端。
2)内部时钟设置命令(D7D6D5=001) 内频=外频/分频值,外频为 CLK 信号频率,分频值为 D4D3D2D1D0,假定 CLK
用于位显示器提供段控数据。使用时,8279 自动对显示器扫描,将显示缓
冲器中的数据输出在 LED 上显示。
(2)8279 芯片信号引脚
8279 位双列直插芯片,共 40 引脚,引脚分布及名称如图 3 所示。
·DB0~DB7 数据线 用于在 8279 和系统之间传
送数据、命令和状态,可直接与
CPU 连接
· 片选信号
低电平有效。
·A0 区分信息的特征位 A0=0 时,输入/输出信息均
为数据;A1=1 时,输入信息为
命令,输出信息为状态。
Hale Waihona Puke Baidu
·
读、写选通信号
低电平有效,用于向 8279
写入命令或数据以及从 8279 读
出状态的控制
·IRQ 中断请求信号
高电平有效,当有键被按
下,即 FIFO RAM 中有数据时,