《智能仪器人机接口》PPT课件.ppt
《《智能仪器人机接口》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《智能仪器人机接口》PPT课件.ppt(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3 3章章 智能仪器人机接口智能仪器人机接口 3.1 键盘与接口键盘与接口 3.2 LED显示及接口显示及接口 3.3 键盘键盘/LED显示器接口设计显示器接口设计 3.4 CRT显示及接口显示及接口 3.5 微型打印机及接口微型打印机及接口第第3 3章章 智能仪器人机接口智能仪器人机接口 人机交互功能即用户与仪器交换信息的功能。人机交互功能即用户与仪器交换信息的功能。这个功能有两方面的含义:一是用户对智能仪这个功能有两方面的含义:一是用户对智能仪器进行状态干预和数据输入;二是智能仪器向用户报器进行状态干预和数据输入;二是智能仪器向用户报告运行状态与处理结果。告运行状态与处理结果。实现智能
2、仪器人实现智能仪器人机交互功能的部件有键盘、机交互功能的部件有键盘、显示器和打印机等,这些部件同智能仪器主体电路的显示器和打印机等,这些部件同智能仪器主体电路的连接是由人机接口电路来完成的连接是由人机接口电路来完成的.人机接口技术是智能仪器设计的关键技术之一。人机接口技术是智能仪器设计的关键技术之一。3.1 键盘与接口键盘与接口 含硬件与软件两部分。硬件指键盘的组织,即键盘结构及含硬件与软件两部分。硬件指键盘的组织,即键盘结构及其与主机的连接方式;软件是指对按键操作的识别与分析,称其与主机的连接方式;软件是指对按键操作的识别与分析,称为键盘管理程序。为键盘管理程序。键盘与接口的任务大体可分为下
3、列几项:键盘与接口的任务大体可分为下列几项:(1)识键:识键:判断是否有键按下。若有,则进行译码;若无,判断是否有键按下。若有,则进行译码;若无,则等待或转做别的工作。则等待或转做别的工作。(2)译键:译键:识别出哪一个键被按下并求出被按下键的键值。识别出哪一个键被按下并求出被按下键的键值。(3)键值分析:键值分析:根据键值,找出对应处理程序的入口并执根据键值,找出对应处理程序的入口并执行之。行之。本节侧重讨论本节侧重讨论(1)和和(2)两项工作,两项工作,下一节侧重讨论键值分下一节侧重讨论键值分析方法。析方法。(1)和和(2)两项工作通常合称为扫描。两项工作通常合称为扫描。3.1 键盘与接口
4、键盘与接口3.1.1 键盘输入基础知识键盘输入基础知识 一、一、键盘的组织键盘的组织 键盘按其工作原理可分为编码式键盘和非编码式键盘。键盘按其工作原理可分为编码式键盘和非编码式键盘。编码式键盘由按键键盘和专用键盘编码器两部分构成。当键编码式键盘由按键键盘和专用键盘编码器两部分构成。当键盘中某一按键被按下时,键盘编码器会自动产生对应的按键代码,盘中某一按键被按下时,键盘编码器会自动产生对应的按键代码,并输出选通脉冲信号与并输出选通脉冲信号与CPU 进行信息联络。进行信息联络。非编码键盘不含编码器,当某键按下时,键盘只送出一个简非编码键盘不含编码器,当某键按下时,键盘只送出一个简单的闭合信号,单的
5、闭合信号,对应按键代码的确定必须借助于软件来完成。对应按键代码的确定必须借助于软件来完成。显然,非编码键盘的软件是比较复杂的,并且要占用较多的显然,非编码键盘的软件是比较复杂的,并且要占用较多的CPU时间。但非编码键盘可以任意组合、成本低、使用灵活,时间。但非编码键盘可以任意组合、成本低、使用灵活,因而智能仪器大多采用非编码式键盘。因而智能仪器大多采用非编码式键盘。3.1.1 键盘输入基础知识键盘输入基础知识 一、一、键盘的组织键盘的组织 非编码键盘有独立式键盘、矩阵式键盘和交互式键盘之分。非编码键盘有独立式键盘、矩阵式键盘和交互式键盘之分。独立式键盘结构的特点是一键一线,即每一个按键单独占用
6、独立式键盘结构的特点是一键一线,即每一个按键单独占用一根检测线与主机相连,一根检测线与主机相连,矩阵式键盘结构的特点是把检测线分成两组,一组为行线,矩阵式键盘结构的特点是把检测线分成两组,一组为行线,另一组为列线,按键放在行线和列线的交叉点上。另一组为列线,按键放在行线和列线的交叉点上。mn矩阵键盘矩阵键盘与主机连接只需要与主机连接只需要m+n条线,显然,当需要的按键数目大于条线,显然,当需要的按键数目大于8时,时,一般都采用矩阵式键盘。一般都采用矩阵式键盘。交互式键盘结构的特点是,任意两检测线之间均可以放置一交互式键盘结构的特点是,任意两检测线之间均可以放置一个按键。很显然,交互式键盘结构所
7、占用的检测线比矩阵式还要个按键。很显然,交互式键盘结构所占用的检测线比矩阵式还要少,但是这种键盘所使用的检测线必须是具有位控功能的双向少,但是这种键盘所使用的检测线必须是具有位控功能的双向I/O端口线。端口线。3.1.1 键盘输入基础知识键盘输入基础知识 一、一、键盘的组织键盘的组织 编程扫描工作方式、中断工作方式和定时扫描工作方式。编程扫描工作方式、中断工作方式和定时扫描工作方式。(1)编程扫描工作方式:也称查询方式。编程扫描工作方式:也称查询方式。(2)中断工作方式:中断工作方式:(3)定时扫描工作方式:定时扫描工作方式:二、二、键盘的工作方式键盘的工作方式 二、二、键盘的工作方式键盘的工
8、作方式 (1)编程扫描工作方式:编程扫描工作方式:该方式也称查询方式,它是利用该方式也称查询方式,它是利用CPU在完成其他工作的空余调用键盘扫描程序,以响应键输入在完成其他工作的空余调用键盘扫描程序,以响应键输入的要求。当的要求。当CPU在运行其他程序时,它就不会再响应键输入要在运行其他程序时,它就不会再响应键输入要求,因此,采用该方式编程时,求,因此,采用该方式编程时,应考虑程序是否能对用户的每应考虑程序是否能对用户的每次按键都会做出及时的响应。次按键都会做出及时的响应。(2)中断工作方式:中断工作方式:当键盘中有按键按下时,硬件会产生当键盘中有按键按下时,硬件会产生中断申请信号,中断申请信
9、号,CPU响应中断申请后对键盘进行扫描,并转入响应中断申请后对键盘进行扫描,并转入与按下键相应的键功能处理程序。优点:由于在无键按下时不与按下键相应的键功能处理程序。优点:由于在无键按下时不进行键扫描,进行键扫描,CPU工作效率高,并能确保对用户的每次按键操工作效率高,并能确保对用户的每次按键操作做出迅速的响应。作做出迅速的响应。(3)定时扫描工作方式:定时扫描工作方式:利用专门定时器产生定时中断申利用专门定时器产生定时中断申请信号。由于每次按键的持续时间一般不小于请信号。由于每次按键的持续时间一般不小于100ms,为了不,为了不漏检,定时中断的周期一般应小于漏检,定时中断的周期一般应小于10
10、0ms。三、三、键抖动及消除键抖动及消除 当按键被按下或释放时,按键触点的弹性会产生一种抖动当按键被按下或释放时,按键触点的弹性会产生一种抖动现象。即当按键按下时,触点不会迅速可靠地接通;当按键释现象。即当按键按下时,触点不会迅速可靠地接通;当按键释放时,触点也不会立即断开,而是要经过一段时间的抖动才能放时,触点也不会立即断开,而是要经过一段时间的抖动才能稳定下来。抖动时间视按键材料不同一般为稳定下来。抖动时间视按键材料不同一般为5ms10ms。键抖动可能导致计算机将一次按键操作识别为多次操作,为键抖动可能导致计算机将一次按键操作识别为多次操作,为克服这种由键抖动所致的误判,常采用如下措施:克
11、服这种由键抖动所致的误判,常采用如下措施:(1)硬件电路消除法:利用硬件电路消除法:利用RS触发器来吸收按键的抖动如图触发器来吸收按键的抖动如图所示。一旦有按键按下时,触发器就立即翻转,触点的抖动便所示。一旦有按键按下时,触发器就立即翻转,触点的抖动便不会再对输出产生影响,按键释放时亦然。不会再对输出产生影响,按键释放时亦然。(2)软件延时法:当判定按键按下时,用软件延时软件延时法:当判定按键按下时,用软件延时10ms20ms,等待按键稳定后重新再判一次,以躲过触点抖动期。,等待按键稳定后重新再判一次,以躲过触点抖动期。四、四、键连击的处理键连击的处理 当按下某按键时,对应的功能分析程序会得以
12、执行。如果在当按下某按键时,对应的功能分析程序会得以执行。如果在操作者释放按键之前,对应的功能得以多次执行,如同操作者操作者释放按键之前,对应的功能得以多次执行,如同操作者在连续不断操作该键一样,这种现象就称为连击。在连续不断操作该键一样,这种现象就称为连击。连击现象可用图(a)所示流程图的软件方法来解决,把连击现象加以合理利用,有时会给操作者带来方便。例如在某些简易仪器没安排09数字按键,而合理利用连击现象,只设置一只调整按键,采用加1(或减1)的方法来调整有关参数。具体实现软件流程图如图(b)所示,五、五、无锁键、自锁键及互锁键无锁键、自锁键及互锁键 无锁键即按键。当键按下时,按键的两个触
13、头接通;松开时,无锁键即按键。当键按下时,按键的两个触头接通;松开时,两个触头断开,恢复开路。无锁键在逻辑上等效于单稳态。两个触头断开,恢复开路。无锁键在逻辑上等效于单稳态。自锁键在逻辑上等效于双稳态。当第一次按下时自锁键在逻辑上等效于双稳态。当第一次按下时(包括松开包括松开后后),其按键两个触头接通;第二次按下及松开后,两个触头又,其按键两个触头接通;第二次按下及松开后,两个触头又断开,不断地按此规律动作。自锁键常用在仪器二选一选择开断开,不断地按此规律动作。自锁键常用在仪器二选一选择开关等场合,例如,交关等场合,例如,交/直流耦合选择等。直流耦合选择等。互锁键是指一组具有互锁关系的按键开关
14、。当这一组按键开互锁键是指一组具有互锁关系的按键开关。当这一组按键开关之一被选择时关之一被选择时(即对应的开关接通即对应的开关接通),与该键有互锁关系的其,与该键有互锁关系的其他键都将断开。或者说,具有互锁关系的这组按键,某时刻最他键都将断开。或者说,具有互锁关系的这组按键,某时刻最多只能有一个键被选择。互锁键在仪器中的应用场合也较多,多只能有一个键被选择。互锁键在仪器中的应用场合也较多,例如,某仪器具有例如,某仪器具有5挡量程,则对应这挡量程,则对应这5挡量程的按键开关必须挡量程的按键开关必须是互锁键,因为仪器在某一时刻只允许选择一挡量程。是互锁键,因为仪器在某一时刻只允许选择一挡量程。电子
15、仪器需要用到无锁键、自锁键、互锁键等按键类型电子仪器需要用到无锁键、自锁键、互锁键等按键类型五、五、无锁键、自锁键及互锁键无锁键、自锁键及互锁键 传统仪器中,无锁、自锁及互锁的功能都是通过采用不同传统仪器中,无锁、自锁及互锁的功能都是通过采用不同机械结构的无锁键、自锁键及互锁键来实现的。机械结构的无锁键、自锁键及互锁键来实现的。智能仪器中,仪器面板上的按键开关一般只使用机械结构智能仪器中,仪器面板上的按键开关一般只使用机械结构最简单的无锁键,即通常所说的常态为开路的按键开关。最简单的无锁键,即通常所说的常态为开路的按键开关。智能仪器自锁及互锁的开关功能需要借助软件设置特定的智能仪器自锁及互锁的
16、开关功能需要借助软件设置特定的标志位等办法,使无锁键也具有自锁及互锁的功能。标志位等办法,使无锁键也具有自锁及互锁的功能。通过软件使无锁键也具有自锁及互锁功能的方法将结合具通过软件使无锁键也具有自锁及互锁功能的方法将结合具体仪器讨论。体仪器讨论。3.1.2 键盘接口电路及控制程序键盘接口电路及控制程序 一、一、独立式键盘接口电路及程序设计独立式键盘接口电路及程序设计 非编码键盘按照与主机连接方式的不同,有非编码键盘按照与主机连接方式的不同,有独立式、矩阵式和交互式之分。本节将对其接口独立式、矩阵式和交互式之分。本节将对其接口电路及程序设计分别予以讨论。电路及程序设计分别予以讨论。二、二、矩阵式
17、键盘接口电路及程序矩阵式键盘接口电路及程序三、三、交互式键盘接口电路及编程方法交互式键盘接口电路及编程方法 一、一、独立式键盘接口电路及程序设计独立式键盘接口电路及程序设计 独立式键盘的每个按键占用一根测试线,它们可以直接与独立式键盘的每个按键占用一根测试线,它们可以直接与单片机单片机IO 线相接或通过输入口与数据线相接,结构很简单。线相接或通过输入口与数据线相接,结构很简单。这些测试线相互独立无编码关系,因而键盘软件不存在译码问这些测试线相互独立无编码关系,因而键盘软件不存在译码问题,一旦检测到某测试线上有键闭合,便可直接转入到相应的题,一旦检测到某测试线上有键闭合,便可直接转入到相应的键功
18、能处理程序进行处理。键功能处理程序进行处理。一个实际三个按一个实际三个按键的独立式键盘接口键的独立式键盘接口电路如右图所示:电路如右图所示:一、一、独立式键盘接口电路及程序设计独立式键盘接口电路及程序设计 首先判断有无键按下;若检测到有键按下,延时10ms避开抖动的影响,查询是哪一键被按下并执行相关的操作。然后再用软件查询等待按键的释放,当判明键释放后,用软件延时10ms后再返回。第二次延时的作用是:一方面避开按键释放时触点抖动的影响;另一方面也具有防连击的功能。该软件对两个以上的键被同时按下(串键)具有判低序号按键有效的功能。独立式键盘接口独立式键盘接口软件流程图软件流程图 上例CPU经常处
19、于空扫描状态。为进一步提高CPU效率,可采用中断工作方式,即只有当键盘中有键被按下时,才执行扫描工作。下图为采用中断方式处理只按键的接口电路图 一、一、独立式键盘接口电路及程序设计独立式键盘接口电路及程序设计 当无键按下时,条测试线均为高电平,经与非门及反相器后仍为高电平,不会产生中断。当其中任一键按下时,INT0变为低电平,向8031申请中断。8031响应后便进入中断服务程序,然后用扫描方法寻找到申请中断的功能键并执行相应功能处理程序。一、一、独立式键盘接口电路及程序设计独立式键盘接口电路及程序设计 ORG 0000H AJMP MAIN ;上电后转主程序上电后转主程序ORG 0003H ;
20、外部中断外部中断0入口入口 AJMP KEYJMP;指向中断服务程序指向中断服务程序 ORG 0100H MAIN:SETB IT0 ;选择边沿触发方式选择边沿触发方式 SETB EX0 ;允许外部中断允许外部中断0 SETB EA ;允许允许CPU中断中断 MOV DPTR,#EF00H ;送送8155命令口地址命令口地址 MOV A,#02H MOVX DPTR,A ;控制字写入控制字写入HERE:AJMP HERE ;模拟主程序模拟主程序 当其中任一键按下时,当其中任一键按下时,INT0变为低电平,向变为低电平,向8031申请中断。申请中断。8031响应后响应后便进入中断服务程序,便进入
21、中断服务程序,用扫描的方法寻找到申请中断的功能键并执行相应键功用扫描的方法寻找到申请中断的功能键并执行相应键功能处理程序。能处理程序。能完成上述工作的程序清单如下:能完成上述工作的程序清单如下:ORG 0120H ;中断服务程序中断服务程序KEYJMP:MOV R3,#08H ;设循环次数设循环次数 MOV DPTR,#0EF01H;送送A口地址口地址 MOV R4,#00H ;计数器清零计数器清零 MOVX A,DPTR ;读入按键状态读入按键状态KEYAD1:RRC A ;状态字右移一位状态字右移一位 JNC KEYAD2 ;C=0,转,转KEYAD2 INC R4 ;计数器加计数器加1
22、DJNZ R3,KEYAD1 KEYRET:RETIKEYAD2:MOV DPTR,#JMPTBL MOV A,R4 RL A JMP A+DPTR ;转相应功能处理转相应功能处理JMPTBL:AJMP SB0;入口地址表入口地址表 AJMP SB1 AJMP SB2 AJMP SB3 AJMP SB4 AJMP SB5 AJMP SB6 AJMP SB7SB0:;S0键功能程序键功能程序 JMP KEYRET ;S0键执行完返回键执行完返回SB1:;S1键功能程序键功能程序 JMP KEYRET SB7:;S7键功能程序键功能程序 JMP KEYRET 二、二、矩阵式键盘接口电路及程序矩阵式
23、键盘接口电路及程序 当采用矩阵式键盘时,为了编程方便,应将矩阵键盘中当采用矩阵式键盘时,为了编程方便,应将矩阵键盘中的每一个按键按一定的顺序编号,这种按顺序排列的编号叫的每一个按键按一定的顺序编号,这种按顺序排列的编号叫顺序码,也称键值。顺序码,也称键值。为了求得矩阵式键盘中被按下键的键值,常用的方法有为了求得矩阵式键盘中被按下键的键值,常用的方法有行扫描法和线路反转法。线路反转法识别键值的速度较快,行扫描法和线路反转法。线路反转法识别键值的速度较快,但必须借助于可编程的通用接口芯片。但必须借助于可编程的通用接口芯片。本节介绍两种键盘接口电路及控制软件,本节介绍两种键盘接口电路及控制软件,一种
24、是采用编程扫描工作方式的行扫描法来识别键值,一种是采用编程扫描工作方式的行扫描法来识别键值,另一种是采用中断工作方式的线路反转法来识别键值。另一种是采用中断工作方式的线路反转法来识别键值。二、矩阵式键盘接口电路及程序二、矩阵式键盘接口电路及程序1.行扫描法行扫描法 该图为该图为48矩阵键盘与单片机接口电路。矩阵键盘与单片机接口电路。8155的端口的端口C 工作于工作于输出方式,用于行扫描。端口输出方式,用于行扫描。端口A工作于输入方式,用来读入列值。工作于输入方式,用来读入列值。由图可知,由图可知,8155的命令的命令/状态寄存器、端口状态寄存器、端口A、端口、端口B和端口和端口C的地的地址分
25、别为址分别为0100H、0101H、0102H和和0103H。采用编程扫描工作方式的行扫描法步骤如下:采用编程扫描工作方式的行扫描法步骤如下:(1)判是否有键按下。使端口判是否有键按下。使端口 C所有的行输出均为低电平,然所有的行输出均为低电平,然后从端口后从端口A读入列值。如果没有键按下,读入值应为读入列值。如果没有键按下,读入值应为FFH,如果,如果有键按下,则不为有键按下,则不为FFH。(2)若有键按下,则延时若有键按下,则延时10ms,再判断是否确实有键按下。,再判断是否确实有键按下。(3)若确实有键按下,则求出按下键的键值。其实现方法是对若确实有键按下,则求出按下键的键值。其实现方法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能仪器人机接口 智能 仪器 人机 接口 PPT 课件
限制150内