第9章_键盘与鼠标器接口技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CS 0 0 0 0
图9.6 8279芯片的内部结构框图
WR 0 0 1 1 RD 1 1 0 0 A
0
操作
0 1 0 1
写显示RAM 写命令字
读FIFO RAM或显示RAM 读状态字
4位的计数器,有译码、编码两种方式,由编程设定 译码方式:最低两位经译码,由SL0~3输出,作为键盘 及显示器的扫描信号.(任何时刻, SL0~3只有一个信 号有效,实现4选1) 编码方式:计数器的状态由SL0~3直接输出,再经外 部译码,才能作为扫描信号.(实现16选1)
键盘接口芯片(续)
(4)键盘去抖动与控制及返回缓冲器 键盘去抖动电路:在键盘扫描方式中,当 有键闭合时,按命令指定方式去抖动后读入 键值。 控制逻辑:按命令指定方式控制去抖动电 路的工作过程,以及对返回信号进行处理。 返回缓冲器:锁存来自RL0~RL7的回复 信号。
键盘接口芯片(续)
(5)FIFO RAM及状态寄存器 FIFO RAM:是一个8×8RAM,在键盘输 入方式时遵循先入先出(FIFO)原则。 状态寄存器:用来存放FIFO RAM的状态, 例如 RAM空、满等。当工作在键盘方式 FIFO存储器不空时,将产生IRQ=1信号向 CPU申请中断。
命令寄存器的格式
键盘接口芯片(续)
① 设置工作方式
0 0 0 D1 D0 K2 K1 K0 扫描方式
② 设置分频系数
0 0 1 P P P P P 特征位 分频系数N(2~31)
特征位
显示方式
输入方式
00:8字符,左入口 01:16字符,左入口 10:8字符,右入口 11:16字符,右入口
00:键盘,双键锁定 01:键盘,N键轮回 10:传感器扫描 11:选通输入
9.1 键盘的工作原理
9.1.1 编码键盘
这种键盘本身带有实现接口主要功能所必需的硬件 电路。能够由硬件自动提供与被按键对应的ASCII 码或其它编码。内部设有键盘编码器,能识键、生 成键码、去抖、防串键。 键盘编码器一般有3种类型:静态编码器、扫描编 码器和转换编码器。 图9.1 扫描键盘的结构图
键盘接口芯片(续)
(3)扫描计数器 扫描计数器可根据编程命令按编码或译码方式 工作。 编码方式:4位计数器按二进制计数,计数状态 从扫描线SL0~SL3输出,经外部译码器泽码后,为 键盘和显示器提供16个扫描信号。 译码方式:扫描计数器的最低两位被译码后从 SL0~SL3输出,可直接作为键盘和显示器扫描信号。 此时键盘矩阵为4×8,显示字符为4位。
9.1 键盘的工作原理
键盘的一个键在结构上相当于一个按键开关,当 按下时接通,放开时断开。 如果一个键就需要I/O接口的一个位,那么这种 键盘称为单线键盘。 将键排列成矩阵的连接方法,通过行列的方式来 识别各个按键,这种键盘叫做行列键。 键盘有两种基本的类型:编码键盘和非编码键盘。
0:写入后地址不变 1:每次写入地址自动加1
键盘接口芯片(续)
⑦ 清除命令
有键按下
无键按下
键盘的工作原理(续)
扫描第0行 扫描第1行
键盘的工作原理(续)
扫描第2行 扫描第3行
键盘的工作原理(续)
例如,假定有一个3×4的矩阵键盘通过并行接 口芯片8255A与微机相连。8255A的A口定义为 输出口,与键盘行线相连;B口定义为输入口, 与键盘列线相连。
键盘的工作原理(续)
表9.1、9.2 显示输出/输入方式
D D 方 式 K2 K1 0 0 0 1 1 0 1 1 方 式
0 0 0 1 1 0 1 1
8 个字符显示,左进方式 16 个字符显示,左进方式 8 个字符显示,右进方式 16 个字符显示,右进方式
扫描键盘输入,双键锁定 扫描键盘输入,N 键轮回 扫描传感器输入 选通输入
为选通信号,上升沿锁存RL0~7到FIFO RAM
键盘接口芯片(续)
显示输出方式——8字符左入口、16字符左入口、 8字符右入口、16字符右入口 左入口:显示器位置编号与显示RAM地址一一对 应(0号单元显示在0号显示器上),显示时从最左 位开始 右入口(计算器显示方式):最高位从最右边显 示器进入,以后逐次左移
键盘的工作原理(续)
④被按键识别
行扫描法:逐行扫描,由列线状态识别
线反转法:行列颠倒两次扫描识别
⑤产生健码
得到反映键功能的键码,查表法
典型非编码键盘结构:大都采用按行、列排列 的矩阵开关结构,这种结构可以减少硬件和 连线。
典型非编码键盘结构
键盘的工作原理(续)
行扫描法识别按键:采用步进扫描方式,通过行线发 出低电平信号,如果该行线所连接的键没有按下的话, 则列线所连接的输出端口得到的是全 “1”信号; 如果有键按下的话,则得到的是非全“1”信号。
键盘的工作原理(续)
9.2 键盘接口芯片
Leabharlann Baidu.2.1 8279的引脚信号
图9.5 8279芯片的引脚信号 8279芯片的引脚信号分类
9.2.2 8279的内部结构
图9.6 8279芯片的内部结构框图
图9.5 8279芯片的引脚信号
面向CPU的信号(15)
8279芯片的引脚信号分类
D0~7、CS、RD、WR A0:端口选择,=0,数据口;=1,命令口或状态口 IRQ:中断申请,高有效,通常键盘有数据输入请求 时有效 与键盘接口的信号(14) CLK:时钟,为8279提供内部工作时钟 SL0~3:扫描信号,扫描键盘及LED显示器(既与键盘 接口,也与LED接口). RL0~7:回复信号,返回键盘矩阵或传感器阵列的列 信号 SHIFT:移位信号,入,高有效,键盘数据D6位, CNTL/STB:控制/选通信号,入,高有效,键盘输入 中,是键盘数据D7位,也用于扩充键功能,(作为控 制功能键);选通输入方式,其上升沿将RL0~7上的 数据存入先入先出存储器(FIFO RAM) 与LED显示器接口的信号(专用9根) 除了SL0~3外 OUTA0~3、OUTB0~3:A组、B组显示数据输出,与SL0~3同步, 两组可独立使用或合并使用 BD:显示消隐信号,出,低有效,显示消隐时,有效
图9.1 扫描键盘的结构图
键盘的工作原理(续)
9.1.2 非编码键盘
非编码键盘仅提供行和列的矩阵,其硬件逻辑与按 键编码不存在严格的对应关系,而要由所用的程序 来确定。只提供键盘矩阵,按键的识别、键码的提 供由软件来完成 按键识别
图9.2:行扫描原理图; 图9.3:线反转法原理图; 图9.4:中断识别按键法
键盘接口芯片(续)
(6)显示RAM、显示寄存器、显示地址寄存 器 显示 RAM:用来存储显示数据,容量为 16×8位。 显示寄存器:存放显示内容。 显示地址寄存器:寄存读/写显示RAM的 地址,即对应显示字符从哪一位开始。
键盘接口芯片(续)
当有键闭合时,经去抖动后将行、列编码和附 加的移位、控制状态一起形成键盘数据送至 FIFO存储器,供CPU读取。键盘数据格式为:
键盘的工作原理(续)
串键保护: 由于操作不慎,可能会造成同时有几个键被按下,这种情 况称为串键。有三种处理串键的技术:两键同时按下、n键 同时按下和n键锁定。 “两键同时按下”技术:在两个键同时按下时产生保护作用。
最简单的办法:当只有一个键按下时才读取键盘的输出, 最后仍被按下的键是有效的正确按键。当用软件扫描键盘时 常采用这种方法。 另一种方法:是当第一个按键未松开时,按第二个键不 产生选通信号。这种方法常借助硬件来实现。
表9.3 CD2~CD0定义的清除方式
CD2 CD1 0 1 1 1 0 CD0 × 0 1 清除方式 将显示 RAM 全部清除 将显示 RAM 置成 20H 将显示 RAM 置成全 1
不清除(若 CA=1,则 CD1CD0 仍有效)
键盘接口芯片(续)
8279的各种工作方式都要通过对命令寄存器的设 置来实现。8279共有8种命令,通过这些命令设置工 作寄存器,来选择各种工作方式。命令寄存器共8位。
D7 D6 D5 D 4 D3 D 2 D1 D0
CNTL SHIFT SL2 SL1 SL0 R2 R1 R0
控制
移位
行编码
列编码
9.2 键盘接口芯片
9.2.3 8279的命令字/状态字
设置键盘及显示方式命令字 表9.1 显示输出方式 表9.2 输入工作方式 设置时钟频率命令字、读FIFO RAM命令字 读显示RAM命令字、写显示RAM命令字 禁写显示RAM/消隐命令字 清除命令字 表9.3 CD2~CD0定义的清除方式 结束中断/设置错误方式、状态字
第9章 键盘与鼠标器接口 技术
9.1 9.2 9.3 9.4 9.5 9.6 键盘的工作原理 键盘接口芯片 PC 系列机的键盘 鼠标器接口技术 本章小结 习题与思考题
本章概述
键盘和鼠标是微型计算机系统中最常用的人机 对话输入设备。 组成键盘的按键有机械式、电容式、导电橡胶 式和薄膜式等多种,但不论何种形式,其作用都 是一个使电器接通与断开的开关。目前微机系统 中使用的键盘,按其功能的不同,通常可分成编 码键盘和非编码键盘两种基本类型。 鼠标按结构可分为机械式鼠标和光电式鼠标; 按接口分有标准串行口鼠标、总线式鼠标、PS/2 鼠标以及USB鼠标。目前PS/2鼠标和USB鼠标使用 最为普遍。
图9.2 行扫描原理图
图9.3 线反转法原理图
图9.4 中断识别按键法
键盘的工作原理(续)
键盘接口要解决三个主要问题: 1、去抖动 2、串键保护 3、按键识别
键盘硬件去抖动
键盘的工作原理(续)
键盘接口原理: 非编码键盘的接口功能主要由软件完成。假定采 用行扫描法,接口工作原理可归纳如下: ①检查是否有键按下 ②去抖动, 时间5~20ms,软件延时或硬件完成 ③防串键:多键同时按下或前一按键未释放又按下新 键的处理。 双键锁定:后释放者有效; N键轮回:所有键依顺序产生键码
0:编码扫描 1:译码扫描
分频目的:得到100KHz的 基本工作时钟
键盘接口芯片(续)
③ 设置读FIFO/传感器RAM的地址
0 1 0 AI
④ 设置读显示RAM的地址
0 1 1 AI A3 A
2
A
2
A
1
A
0
A
1
A
0
特征位
自动 无 FIFO RAM 增量 效 地址 0:读出后地址不变 键盘方式无效,写0 1:每次读出地址自动加1
控制与定时寄存器:寄存键盘及显示器工作方 式,完成控制功能 定时控制:包括基本的计数器是可编程N计数 器,N由编程指定(2~31),对CLK分频,获得内 部所需100kHz工作时钟;其他再分频,为键盘 及显示器扫描提供扫描时钟
键盘接口芯片(续)
8279的工作方式 数据输入方式——键盘输入(键扫描)、传感器扫描、 选通输入 键盘扫描:按下一个键时,形成键盘数据,送入FIFO RAM,并产生IRQ(数据读出后撤除) 传感器扫描:FIFO RAM中8个单元用于寄存传感器的 现时状态,又称传感器RAM,地址编号与扫描线顺序 一致,传感器阵列(最多为8×8位)中某一位状态发 生变化时,产生IRQ 选通输入:与8255A通输入端口的功能完全一样,CNTL/STB作
特征位
自动 显示RAM地址 增量 0:读出后地址不变 1:每次读出地址自动加1
⑤ 设置写显示RAM的地址
1 0 0 AI
自 动 增 量
⑥ 禁写显示RAM/消隐命令
1 0 1 无效 IWA IWB BLA BLB
A3
A
2
A
1
A
0
特征位 显示RAM地址
A组 禁写
B组 禁写
A组 消隐
B组 消隐
特征位
1:相应显示RAM禁止写入
键盘接口芯片(续)
(1)FIFO控制及数据缓冲器 A0=0时,选中数据寄存器,A0=1时,选 中命令、状态寄存器。 (2)控制与定时寄存器及定时控制 控制与定时寄存器:用来寄存键盘和显示 的工作方式,以及由CPU编程的其他操作方 式。并通过译码产生相应控制信号,完成规 定的控制功能。 定时控制:对外部时钟信号CLK分频至内 部所需要的100kHz时钟。
键盘的工作原理(续)
“n键同时按下”技术:不理会所有被按下的键,直 至只剩下一键,或者将所有按键的信息都存入内部 缓冲器中,然后逐个处理,这种方法成本较高。 “n键锁定”技术:只处理一个键,任何其它按下又 松开的键不产生任何码。通常第一个被按下或最后 一个松开的键产生码。这种方法最简单也最常用。