微型计算机上的常用接口名称,第11章微型计算机常用外设接口技术总汇.ppt

;;1.键开关与键盘分类; 键盘的分类方法比较多,按照键码的识别方法,键盘可分为两大类型:编码键盘和非编码键盘。

编码键盘由硬件完成键盘识别功能,它通过识别键是否按下以及所按下键的位置,由编码电路产生一个唯一对应的编码信息(如ASCII码)。

非编码键盘由软件完成键盘识别功能,它利用简单的硬件和一套专用键盘编码程序来识别按键的位置,然后由CPU将位置码通过查表程序转换成相应的编码信息。非编码键盘的速度较低,但结构简单,并且通过软件能为某些键的重定义提供很大的方便。;(2)键开关和键盘矩阵的编码; 键盘上有行线和列线之分,本键盘共有8条行线和4条列线。在行线和列线的交点处有一个键,由于行线与列线分别与键的不同端相连,平时键处于断开状态,所以行线和列线互不相通。接口时,行线一端接输出口,另一端悬空;而列线一端经电阻接+5 V电源,另一端接输入口。由于列线通过电阻与+5 V电源相连,所以列线的初始状态为高电平。; 最常用的编码方法是以键在键盘矩阵中的位置,从0开始按自然数顺序进行编码,键码以十六进制数表示。表11-1是键盘扫描示意图中各键的键码,左边第一列的内容对应各行的扫描码,最后一行的内容是对应列有闭合键时的状态码(或称返回码)。表中内容为键码,注意键码排列的规律性。;2.键盘接口的基本功能 ; USB接口支持热插拔,即插即用的优点,所以USB接口通常广泛应用到工业当中。PS/2接口和USB接口的键盘在使用方面差不多,但由于USB接口支持热插拔,因此USB接口键盘在使用中略方便一些。但计算机底层硬件对PS/2接口支持的更完善一些,因此如果电脑遇到某些故障,使用PS/2接口的键盘兼容性更好一些。; 无论哪种键盘接口,都必须具有去抖动、防串键、按键识别和键码产生4个基本功能。;按键的消抖,可用硬件或软件两种方法。

在键数较少时可用硬件方法消除键抖动。方法是在键开关与计算机接口之间增加一个消抖电路(如RS触发器、RC滤波电路等)。

如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。;(2)防串键;(3) 按键识别;(4)键码产生;(1)将串行接收键盘送来的接通扫描码和断开扫描码,转换成并行数据并暂存;

(2)收到一个完整的扫描码后,立即向主机发中断请求;

(3)主机中断响应后读取扫描码,并转换成相应的ASCII码存入键盘缓冲区。对于控制键,设置相应的状态;

(4)接收主机发来的命令,传送给键盘,并等候键盘的响应,自检时用以判断键盘的正确性。;;1.简单键盘接口与行扫描法; 矩阵键盘按键的识别方法主要有两种:行扫描法和线反转法。行扫描法的基本工作原理为:

(1)行线为输出,列线为输入(因列线接有上拉电阻),首先使行线为全“0”,读回列线值。

(2)当无键按下时,输入列线位为全“1”,当有键被按下时,输入列线位中不为全“1”。

(3)当有键按下时,要找出是哪个键被按下,具体的方法为:;①逐行使输出线每次仅有一位为“0”,其余行线为高,然后读回列线(输入)。

②如果读回列值不为全“1”,则读回为“0”的列和输出为“0”的行交叉的那个键被按下,如果读回列值为全“1”,则该行线上的开关没有被按下。

③使下一行为“0”,其余行线为高,重复步骤2)。; 以图11-3为例,假设8255的PA口、PB口、PC口及控制口地址分别为80H—83H,则键盘扫描程序如下:;IN AL,82HCMP AL,0F0HJE WAIT MOV AL,0FEH ;置第0行行线为0OUT 82H,ALIN AL,82HAND AL,0F0H ;保留列线状态CMP AL,0F0HJE NEXT1 ;第0行无键按下跳往下一行检测CMP AL,0E0HJE KEY00 ;0行0列的键按下CMP AL,0D0H;JE KEY01 ;0行1列的键按下CMP AL,0B0HJE KEY02 ;0行2列的键按下CMP AL,70HJE KEY03 ;0行3列的键按下JMP EXITNEXT1: MOV AL,0FDH ;置第1行行线为0OUT 82H,AL IN AL,82HAND AL,0F0HCMP AL,0F0HJE NEXT2 ;第1行无键按下跳往下一行检测CMP AL,0E0H;JE KEY10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值