微型计算机原理与接口技术(第二版)第8章 人机交互接口.pptVIP

微型计算机原理与接口技术(第二版)第8章 人机交互接口.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 人机交互接口 人机交互接口就是用户与计算机进行交流的接口,即用户如何将信息输入计算机,计算机如何将处理后的信息告诉用户。使用人机交互接口的设备主要有:键盘、鼠标器、扫描仪等常见的输入设备,CRT显示器、液晶显示器、LED七段显示器、打印机、绘图机等常见的输出设备。 8.1 键盘接口 键盘是微机系统上最基本的标准输入设备。用户通过键盘向计算机输入操作命令、程序或数据。尽管目前已有语音输入、手写板输入、图象扫描识别等多媒体输入方式,然而键盘的重要地位还不会被其他输入方式所取代。 编码键盘能够由硬件逻辑自动提供与被按键对应的ASCII码或其它编码。编码键盘中的某一键按下后,能够提供与该键相对应的编码信息。如果是ASCII码键盘,就能提供与该键相对应的ASCII码。编码键盘的缺点是硬件设备随着键数的增加而增加。 非编码键盘仅仅简单地提供被按键行和列的矩阵,其它工作都靠程序实现,这样,非编码键盘就为系统软件在定义键盘的某些操作上提供了更大的灵活性。目前已有一些专用芯片可以完成其中的一些工作。非编码键盘具有价格便宜、配置灵活的特点。 8.1.1 捎除抖动及重键处理 键盘的按键有机械式、电容式、薄膜式等多种,但就它们的作用而言,都是一个使电路“通”或“断”的开关。在对机械式按键进行键盘输入时,一般存在两个问题,即触点弹跳与同时按下一个以上键的问题,也就是所谓的抖动与重键的问题。 1.抖动 抖动是开关本身的一个最普遍的问题,它的产生是当机械开关的触点闭合时,在达到稳定之前需要短暂抖动或弹跳几下,即反复闭合、断开几次之后,才能达到可靠地闭合在一起。抖动也存在于开关断开时,其情形与开关闭合时相同。抖动产生的尖脉冲情况如图8.1.1所示。 根据所用键的不同质量,键的抖动时间可为10~20ms。键的抖动会引起一次按键被读入多次。解决键的抖动可以使用硬件滤波方法或软件延迟方法。硬件滤波是对每一个键加上R-C滤波电路,或加上RS去抖电路。这种方法通常在键数少的情况下使用。而键数较多时,则经常采用软件去抖动技术,这种方法的实质就是采用一个产生20ms左右延迟的子程序,以等待键的输出达到完全稳定后才去读取代码。 2.重键 所谓重键是指两个或两个以上的键同时按下,或者一个键按下后还未弹开,另一个键又按下的情况。由于操作上的原因,在键盘上同时按下一个以上的键是可能的(组合键除外)。 检测出这种现象并防止产生错误编码是很重要的。解决这个问题的三种主要技术是:两键同时按下保护技术,n键同时按下保护技术和n键连锁技术。 8.1.2 线性键盘 从按键的连接方式,键盘可以分为线性键盘和矩阵键盘两类。 线性键盘采用独立式按键,是最简单的键盘结构,它是指直接用I/O口线构成的单个按键电路。每一按键互相独立地各自接通一条输入I/O口线,每根I/O口线上的按键的工作状态不会影响其它I/O口线的工作状态。如图8.1.2所示为线性键盘的按键电路。通常按键输入都采用低电平有效,上拉电阻保证了按键断开时,I/O口线有确定的高电平。当I/O口内部有上拉电阻时,外电路可以不配置上拉电阻。 线性键盘电路配置灵活,软件结构简单。但每个按键必须占用一根I/O口线,在按键数量较多时,I/O口线浪费较大。故在按键数量不多时,常采用这种按键电路。 线性键盘电路 假设8255A的A口、B口、C口、控制口的端口地址分别是60H、61H、62H、63H,采用软件消抖技术(只考虑前沿消抖),编程实现对按键K3~K0的识别,假设按键K3~K0的对应编码为3~0,识别按键后,将对应的编码存到AH寄存器中。有D20ms延时子程序可以调用。 程序设计 程序设计 程序设计 8.1.3 矩阵键盘 为了减少键盘接口所占用I/O线的数目,在按键数较多时,通常都将按键排列成矩阵形式。矩阵式键盘又叫行列式键盘,用I/O口线组成行、列结构。按键设置在行列的交点上。例如2×2的行列结构可构成4个键的键盘,4×4的行列结构可构成16个键的键盘。利用这种矩阵结构只需N+M条I/O口线,即可连接N×M个按键。 在这种矩阵键盘结构中,对按键的识别是对键盘扫描后,通过软件来完成的。键盘扫描方式一般有两种,一种是传统的行扫描法,另一种是速度较快的线反转法。 1.行扫描法 行扫描法是步进扫描方式,每次向键盘的某一行发出扫描信号,同时通过检查列线的输出来确定闭合键的位置。 以图8.1.3的电路连接为例,假设行输出端口1的地址为200H,列输入端口2的地址为201H,采用软件消抖技术(只考虑前沿消抖),编程实现对0键~F键的识别,识别按键后,将按键的键号(即0~F)存到AH寄存器中,若为重键,则将0FFH存到AH寄存器中。有D20ms延时子程序可以调用。 本例中,键的位置码是由行号和列号组

您可能关注的文档

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档