第章人机对话.doc

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第章人机对话

第七章 智能仪器的人机对话通道 作用:实现人与智能仪器之间的信息交换。 第一节 键盘与接口 一、键盘的形式与种类: 1)各种扳键 2)各种按键,在智能仪器中最常用的薄膜开关。 3)触摸键 2、键盘的分类 编码键盘:键盘上闭合键的识别是由专用硬件实现的; 非编码键盘:键盘上闭合键的识别是靠软件实现的。 二、键盘的接口必须解决的一些问题: 1)决定是否有键按下; 2)如有键按下,决定是哪一个键被按下; 3)确定被按键的读数; 4)反弹跳—按键抖动的消除。 5)处理串键,既同时有一个以上的按键按下。 三、抖动、连击与串键 1、按键抖动及消除 1)按键的抖动 机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。其抖动过程如图所示,抖动时间的长短与开关的机械特性有关,一般为5(10 ms。 在键抖动可能导致计算机将按键操作识别为多次操作。 2) 消除的措施: 硬件电路消除法,如图,用R-S触发器。 按下前:a=0;b=1;输出为1 按下后:a=1;b=0;c=1,输出为0 弹跳时:a=1;b=1;输出为0 (2) 软件延时法 当判定按键按下时,用软件延时10ms-20ms,等待键稳定后重新再判一次,以躲过触点抖动期。 2、 按键连击的处理 1)如果希望连击,(按下不抬起,按多次按键处理),隔一定时间对按键采样,若未抬起就认为按键已再次按下。常用来对一些参数连续调整。 2)不希望连击,每次按键等检测到释放后再处理。 3、串击,一次按下几个按键 处理方法: 1)在智能仪器中为了减少按键的数量,经常用几个按键一起按下来选择某个功能,是功能型串击,在单片机中,要检测几个键同时按下才有效; 2)不需要串击,一般有三种方法:最先按下有效;最后释放有效;全部无效。 四、按键的组织形式与识别 1. 独立式键盘 独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键的典型应用如图所示。 独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。 独立式键盘都是非编码键盘,要编程进行按键的识别和处理。在小型智能仪器中应用较多。 2、矩阵式按键 ? 在智能仪器系统中,若使用按键较多时,通常采用矩阵式(也称行列式)键盘。 1) 矩阵式键盘的结构及原理 矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上,其结构如图所示。 由图可知,一个4×4的行、列结构可以构成一个含有16个按键的键盘,显然,在按键数量较多时,矩阵式键盘较之独立式按键键盘要节省很多I/O口。 2)矩阵式键盘常用的识别方法 行扫描法 基本原理:由单片机给列线逐个输出低电平,然后读行线;按键未按下时,行线都是高电平;如果按下某一个按键,对应的行线上就变成了低电平,未按下的还是高电平。如按下9,P12就变为低电平。 实施步骤: a、给列线全置0; b、读行线,并检查是否全为1;全为1无键按下,否则有键按下; (主要是为了快速检查是否有按键按下,如用中断就不要该步骤,如有按键按下,中断就响应) c、给列线逐个置0,读行线,找到按键对应的行和列。 例如5键按下,P15=0时,P11=0,则读到的代码为P10BDH 线翻转法 基本原理:单片机先给行线全置0,读列线;然后在给列线全置0,读行线;无键按下时,读列线或读行线应全为高电平,有键按下,如键5按下,行线置0,列线读的值为1101,列线置0,读行线应为1101,将两个读数合在一体,读到的代码与行扫描法读出的代码相同。 通过查键码转换表找到对应的键值(顺序码)。如BDH代表5。 键码转换表: 采用线反转法获取特征码和顺序码程序(不讲) KEYIN:MOV P1,#0F0H ;低4位输出0 MOV A,P1 ;从高4位读取列信息 ANL A,#0F0H ;分离列信息 MOV B,A ;保存列信息 MOV P1,#0FH ;高4位输出0 MOV A,P1 ;从低4位读取列信息 ANL A,#0FH ;分离列信息 ORL A,B ;行、列信息合成特征码 CJNE A,#0FFH,KEYIN1;判断是否有按键按下 RET ;无按键按下 KEYIN1:MOV B,A ;暂存特征码 MOV DPTR,#KEYCOD ;置特征码表地址 MOV R3,#00H

文档评论(0)

ipad0e + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档