- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
键盘显示接口芯片8279
③ 扫描计数器 4位的计数器,有译码、编码两种方式,由编程设定 译码方式:最低两位经译码,由SL0~3输出,作为键盘及显示器的扫描信 号.(任何时刻, SL0~3只有一根线是低电平,实现4选1) 编码方式:按二进制计数的计数器值由SL0~3直接输出,再经外部译码,才 能作为扫描信号.(实现16选1)
已经设置成写RAM时地址自动加1,且RAM地址为000, 左端入口方式
8个数码管从左至右依次 显示RAM地址单元 单元内原来的数
输入键值5
又输入了键值6
1 0 8 5 5
2 1 2 2 6
3 2 7 7 7
4 3 9 9 9
5 4 -
6 5 -
7 6 -
8 7 1 1 1
键盘显示接口芯片8279
已经设置成写RAM时地址自动加1,且RAM地址为000, 右端入口方式
④ 恢复缓冲器、键盘去抖动及控制逻辑 回复缓冲器:缓冲并锁存回复信号RL0~7的状态 去抖动电路:实现对键盘输入的去抖动 控制逻辑:按命令要求控制去抖动电路,并处理回复信号RL0~7
键盘显示接口芯片8279
⑤ FIFO/传感器RAM及其状态寄存器 FIFO/传感器RAM:8×8位 (a)键盘输入方式或选通输入方式作先入先出存储器(FIFO RAM); (b)传感器输入方式被称为传感器RAM,存储传感器阵列中每个传感器 的状态 FIFO RAM的状态寄存器: (a)键盘输入方式或选通输入方式,寄存FIFO RAM的工作状态,FIFO RAM不空时,会使IRQ变高; (b) 传感器方式,若检测出传感器的状态发生了变化,会使IRQ变高 ⑥ 显示RAM及显示地址寄存器 显示RAM:16×8位,存储字符的字形码,显示时,从OUTA3~0和OUTB3~0输出
键盘显示接口芯片8279
② 设置分频系数
0 0 1
特征位
P
P
P
P
P
分频系数N(2~31)
分频目的:得到8279内部扫描需要的100KHz的基本工作时钟
③ 设置读FIFO/传感器RAM的地址
0 1 0 AI 自动 增量 A2 A1 A0
特征位
无 FIFO RAM地 效 址
0:读出后地址不变 1:每次读出地址自动加1
8个数码管从左至右依次 显示RAM地址单元
单元内原来的数
输入键值5仍然保存在显 示RAM0号地址单元
0 0 8 5
1 1 2 2
2 2 7 7
3 3 9 9
4 4 -
5 5 -
6 6 -
7 7 1 1
键盘显示接口芯片8279
右端输入方式时,由于输入了1个键, 将0号地址单元内容’5’送往0-1=7(mod8)即第7位数码管; 将1号地址单元内容’2’送往1-1=0 (mod8)即第0位数码管; 将2号地址单元内容’7’送往2-1=1(mod8)即第1位数码管; 将3号地址单元内容’9’送往3-1=2(mod8)即第2位数码管; 将4号地址单元内容’-’送往4-1=3(mod8)即第3位数码管; 将5号地址单元内容’-’送往5-1=4(mod8)即第4位数码管; 将6号地址单元内容’-’送往6-1=5(mod8)即第5位数码管; 将7号地址单元内容’1’送往7-1=6(mod8)即第6位数码管; 这样看上去就是先将数据写入0号单元然后循环左移显示,刚 刚输入的数就显示在了最右端的数码管,即显示为”279---15”
双键互锁: 先按下的键被识别,若此时该键不释放再按下另外一个键,则另 外的键不会被识别。若多个键同时按下,则等待只剩下一个键按下时,再将其 值送入RAM。 N键轮换:多个键可以同时按下,按扫描顺序,分别将其值送入RAM,同时按 下的键都会被识别。
键盘显示接口芯片8279
左端入口方式:即显示位置从显示器最左端 1 位开始,以后显 示的字符逐个向右顺序排列; 右端入口方式:即显示位置从显示器最右端 1 位开始,已显示 的字符逐个向左移位,也称为计算器显示方式。 显示RAM地址单元: 0 1 2 3 4 5 6 7 单元内存储要显示的数 8 2 7 9 - 1
1.8279的引脚
(1)数据线 DB0→DB7 是双向三态数据总线,在接口电路中与系统数据总线相连, 用以传送CPU 和8279 之间的数据和命令。 (2)地址线 /CS=0 选中8279, 当A0=1 时,为命令字及状态字地址; 当A0=0 时,为片内数据地址,故8279 芯片占用2 个端口地址。
IWB :禁止B组显示 RAM写。D2=1,B组禁写;D2=0,允许B组写。 BLA:A 组显示熄灭控制。D1=1,熄灭;D1=0,恢复显示。 BLB:B 组显示熄灭控制。D0=1,熄灭;D0=0,恢复显示。
键盘显示接口芯片8279
CNTL和引脚SHIFT的状态(两个独立附加的开关)一起形成键盘数据被送入
8279内部的FIFO(先进先出)存储器。键盘数据格式如下:
D7 最多88键盘,扩充后可 达644键定义 CNTL D6 SHIFT D5 SL2 D4 SL1 D3 SL0 D2 R2 D1 R1 D0Βιβλιοθήκη BaiduR0
引脚SHIFT 引脚CNTL的 的状态 状态
8279有三种工作方式——键盘输入(键扫描)、传感器扫描、选通输入 键盘输入方式:有键按下时,回复缓冲器缓冲并锁存行列式键盘的列输入线。在
逐行列扫描时,回复线用来搜寻每一行列中闭合的键,当某一键闭合时,去抖 电路被置位,延时等待10ms后,再检查该键是否仍处在闭合状态,如不是闭合, 则当做干扰信号不予理睬;如是闭合,则将该键的列扫描码、行回复码、引脚
键盘显示接口芯片8279
若初始化时设置成写RAM时地址自动加1,且RAM地址为 6,右端入口方式
8个数码管从左至右依次 显示RAM地址单元
单元内原来的数
输入键值3仍然保存在显 示RAM 6号地址单元
0 0 8 8
1 1 2 2
2 2 7 7
3 3 9 9
4 4 -
5 5 -
6 6 3
7 7 1 1
键盘显示接口芯片8279 2. 8279的内部结构图及各部分功能
键盘显示接口芯片8279
① I/O控制及数据缓冲器
CS WR RD A0
I/O控制操作
操作
0
0
0
0
1
1
0
1
写显示RAM(写数据)
写命令字
0
0
1
1
0
0
0
1
读FIFO RAM或显示RAM
读状态字
② 控制与定时寄存器及定时控制 控制与定时寄存器:寄存键盘及显示器工作方式,完成控制功能 定时控制:包括基本计数器,首级计数器是可编程N计数器,N由编程指定(2~ 31),对CLK分频,获得内部所需100kHz工作时钟;再分频,为键盘及显示器 扫描提供扫描时钟
键盘方式无效,写0
键盘显示接口芯片8279
④ 设置读显示RAM的地址
0 1 1 特征 位 AI 自动 增量 A3 A
2
A1
A0
显示RAM地址
0:读出后地址不变 1:每次读出地址自动加1
⑤ 设置写显示RAM的地址
1 0 0 特征 位 AI 自动 增量 A3 A2 A1 A0
显示RAM地址
0:写入后地址不变 1:每次写入地址自动加
键盘显示接口芯片8279
键盘显示接口芯片8279
(3)控制线 CLK:8279 的时钟输入线。 IRQ:中断请求输出线,高电平有效。 /RD、/WR:读、写输入控制线。 SL0---SL3:扫描输出线,用来作为扫描键盘和显示的代码输出或直 接输出线。 RL0---RL7:回复输入线,它们是键盘或传感器矩阵的信号输入线。 SHIFT:来自外部键盘或传感器矩阵的输入信号,它是8279 键盘数 据的次高位即D6 位的状态,该位状态控制键盘上/下档功能。在传感 器方式和选通方式中,该引脚无用。 CNTL/S:控制/选通输入线,高电平有效。键盘方式时,键盘数据 最高位(D7)的信号输入到该引脚,以扩充键功能;选通方式时, 当该引脚信号上升沿到时,把RL0---RL7 的数据存入FIFO RAM 中。 OUTA0---OUTA3:通常作为显示信号的高4 位输出线。 OUTB0---OUTB3:通常作为显示信号的低4 位输出线。 /BD:显示熄灭输出线,低电平有效。当/BD=0 时将显示全熄灭。
键盘显示接口芯片8279
同理,若再输入第2个键6,并将6保存至1号地址单元。由于 输入了2个键: 将0号地址单元内容’5’送往0-2=6(mod8)即第6位数码管; 将1号地址单元内容’6’送往1-2=7(mod8)即第7位数码管; 将2号地址单元内容’7’送往2-2=0(mod8)即第0位数码管; 将3号地址单元内容’9’送往3-2=1(mod8)即第1位数码管; 将4号地址单元内容’-’送往4-2=2(mod8)即第2位数码管; 将5号地址单元内容’-’送往5-2=3(mod8)即第3位数码管; 将6号地址单元内容’-’送往6-2=4(mod8)即第4位数码管; 将7号地址单元内容’1’送往7-2=5(mod8)即第5位数码管; 此时显示的内容为”79------156”
键盘显示接口芯片8279
⑥ 禁写显示RAM/消隐命令
1 0 1
特征 位
无 效
IWA
A组 禁写
IWB
B组 禁写
BLA
A组 消隐
BLB
B组 消隐
IWA:禁止A组显示 RAM写。D3=1,A组禁写;D3=0,允许A组写。
OUTA3~OUTA0与OUTB3~OUTB0单独使用时,若只想改变B组的输出 值而A组的输出不受影响,就可以让D3=1即禁止向A组显示RAM写数据,这 样在向显示RAM的一个单元写入8位字节数据时就只写入字节的低4位而字节 的高4位不写入RAM单元。
它们既可单独送数,也可组成一个8位(A组为高4位,B组为低4位)的字。
显示地址寄存器:显示RAM的内部地址, 可由命令直接设定,或设置为每次读/ 写后自动加1。
D7 D6 D5 D4 D3 D2 D1 D0
OUTA3
OUTA2
OUTA1
OUTA0
OUTB3
OUTB2
OUTB1
OUTB0
键盘显示接口芯片8279 3.8279的工作方式
键盘显示接口芯片8279
8279 是可编程的键盘、显示接口芯片。它既具有按键处理功能,又 具有自动显示功能,在单片机系统中应用很广泛。8279内部有键盘FIFO (先进先出堆栈)/传感器,双重功能的8*8=64B RAM,键盘控制部分可 控制8*8=64 个按键或8*8 阵列方式的传感器。该芯片能自动消抖并具有 双键锁定保护功能。显示RAM容量为16*8,即显示器最大配置可达16 位 LED 数码显示。
键盘显示接口芯片8279
右端输入方式时,由于输入了1个键, 将0号地址单元内容’8’送往0-1=7(mod8)即第7位数码管; 将1号地址单元内容’2’送往1-1=0 (mod8)即第0位数码管; 将2号地址单元内容’7’送往2-1=1(mod8)即第1位数码管; 将3号地址单元内容’9’送往3-1=2(mod8)即第2位数码管; 将4号地址单元内容’-’送往4-1=3(mod8)即第3位数码管; 将5号地址单元内容’-’送往5-1=4(mod8)即第4位数码管; 将6号地址单元内容’3’送往6-1=5(mod8)即第5位数码管; 将7号地址单元内容’1’送往7-1=6(mod8)即第6位数码管; 这样看上去就是先将数据3写入6号单元然后循环左移显示,即 在8位数码管上显示为”279--318”
列扫描码,计数器低3 位
回复码,键行线 (RL0~7)编码
键盘显示接口芯片8279
传感器扫描方式:FIFO RAM中8个单元用于寄存传感器的现时状 态,又称传感器RAM,地址编号与扫描线顺序一致,传感器阵列 (最多为8×8位)中某一位状态发生变化时,产生IRQ 选通输入方式:CNTL/STB作为选通信号,上升沿锁存RL0~7到 FIFO RAM。这是只选用显示器没有键盘的工作方式。
键盘显示接口芯片8279 4.8279的命令字(8个,D5D6D7为特征位)
① 设置工作方式
0 0 0 特征位 D1 D0 K2 K1 K0 扫描方 式 0:编码扫描 1:译码扫描 显示方式 输入方 式
00:8字符,左入口 01:16字符,左入口 10:8字符,右入口 11:16字符,右入口
00:键盘,双键锁定 01:键盘,N键轮回 10:传感器扫描 11:选通输入