第三章人机接口.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第3章人机接口技术张弘强第3章人机交互接口技术3.1键盘接口技术3.2LED显示接口技术第3章人机接口技术第3章人机交互接口技术所谓人机交互接口,是指人与计算机之间建立联系、交换信息的输入/输出设备的接口。输入/输出设备主要有键盘、显示和打印机等。它们是计算机应用系统中必不可少的输入、输出设备,是控制系统与操作人员之间交互的窗口。一个安全可靠的控制系统必须具有方便的交互功能。操作人员可以通过系统显示的内容,及时掌握生产情况。并可通过键蛊输入数据,传递命令,对计算机应用系统进行人工干预,以使其随时能按照操作人员的意图工作。微机控制技术3.1键盘接口技术键盘是若干按键的集合,是向系统提供操作人员干预命令的接口设备。键盘分类:★编码键盘,能自动识别按下的键并产生相应代码,以并行或串行方式送给CPU。它使用方便,接口简单,响应速度快,但较贵★非编码键盘,通过软件来确定按键并计算键值。这种方法虽然没有编码键盘速度快,但它价格便宜,因此得到了广泛的应用。微机控制技术3.1.1键盘设计需解决的几个问题1.按键的确认键盘实际上是一组按键开关的集合,其每一个按键就是一个开关量输入装置。键的闭合与否,通过电平状态(高或低)的检测,便可确定相应按键是否已被按下。微机控制技术3.1.1键盘设计需解决的几个问题2.重键与连击的处理实际按键操作中,若无意中同时或先后按下两个以上的键,系统确认哪个键操作是有效的完全由设计者的意志决定。(1)以按下时间的长短为准(2)以最先按下的键为当前按键,(3)将最后释放的键看成是输入键。(4)通常总是采用单键按下有效,多键同时按下无效的原则。(若系统设有复合键,当然应该另当别论)。微机控制技术3.1.1键盘设计需解决的几个问题3.按键防抖动技术多数键盘的按键均采用机械弹性开关。一个电信号通过机械触点的断开、闭合过程,完成高、低电平的切换。由于机械触点的弹性作用,一个按键开关在闭合及断开的瞬间必然伴随有一连串的抖动。抖动过程的长短由按键的机械特性决定,一般为10~20ms。微机控制技术3.1.1键盘设计需解决的几个问题为了使CPU对一次按键动作只确认一次,必须排除抖动的影响。可以从硬件及软件两方面着手解决。(1)硬件防抖技术通过硬件电路消除按键过程中抖动的影响是一种广为采用的措施。这种作法工作可靠,且节省机时。①滤波防抖电路利用RC积分电路对于干扰脉冲的吸收作用,只要选择好时间常数,就能在按键抖动信号通过此滤波电路时,消除抖动的影响。微机控制技术3.1.1键盘设计需解决的几个问题•当触点K断开时,由于电容C经过电阻R2放电,C两端的放电电压波动不会超过门的关闭电压,因此,门的输出也不会改变。滤波防抖电路微机控制技术•当键K未按下时,电容C两端电压均为0,非门输出为1。•当K按下时,由于C两端电压不可能产生突变,尽管在触点接触过程中可能出现抖动,只要适当选取R1、R2和C值,即可保证电容C两端的充电电压波动不超过非门的开启电压(TTL为0.8V),非门的输出将维持高电平。3.1.1键盘设计需解决的几个问题总之,只要R1、R2和C的时间常数选取得当,确保电容C由稳态电压充电到开启电压,或放电到关闭电压的延迟时间等于或大于10ms,该电路就能消除抖动的影响。微机控制技术3.1.1键盘设计需解决的几个问题②双稳态防抖电路用两个与非门构成一个RS触发器,即可形成双稳态防抖电路。微机控制技术设未按下时,键K与A端(ON)接通→Q=1→=0,此信号引至1#与非门的输入端,使其固定输出1。Q当开关K按动时,机械开关具有弹性,在A端将形成一连串的抖动波形。而端在K到达B端之前始终为0。这时,无论A处出现怎样的电压(0或1),Q端恒为1。Q3.1.1键盘设计需解决的几个问题只有当K到达B端→B=0→RS触发器翻转,=1→Q=0,并锁住门2,使其输出恒为1。此时,即使B处出现抖动波形,也不会影响端的输出,从而保证Q端恒为0。QQ微机控制技术同理,在释放键的过程中,只要一接通A,Q端就升至为1。只要开关K不再与B端接触,双稳态电路的输出将维持不变。3.1.1键盘设计需解决的几个问题(2)软件防抖方法采用硬件防抖电路,则N个键就必须配有N个防抖电路。因此,当键的个数比较多时,硬件防抖将无法胜任。在这种情况下,可以采用软件的方法进行防抖。当第一次检测到有键按下时,先用软件延时(10ms~20ms),而后再确认该键电平是否仍维持闭合状态电平。若保持闭合状态电平;则确认此键确已按下,从而消除了抖动的影响。微机控制技术3.1.2少量功能键接口技术在单片机控制系统中,由于其控制对象比较专一,往往只需要几个功能键,特别是在智能化仪器仪表中更是如此。对于具有少量功能键的系统:(1)多采用相互独立的接口方法(2)采用硬件中断或软件查询方法均可实现其键盘接口。设某系统需要8个功能键,采用中断方式接口的硬件电路如图。微机控制技术3.1.2少量功能键接口技术微机控制技术3.1.2少量功能键接口技术按键SB7~SB0各具一种功能。当其全部打开时,对应的各条列线全部为高电平,使8输入与非门(74LS30)输出为低电平,反向后为高电平,不产生中断。当其中某个键被按下时,端变作高电平,向CPU申请中断。CPU响应后,用查询的方法找出被按下的功能键,再通过软件查找出功能键服务程序的入口地址。由此,可写出相关的主程序及中断服务程序。0INT微机控制技术3.1.3矩阵键盘接口技术矩阵式键盘常应用在按键数量比较多的系统之中。这种键盘由行线和列线组成,按键设置在行、列结构的交叉点上,行列线分别连在按键开关的两端。列线通过上拉电阻接至正电源,以使无键按下时列线处于高电平状态。键盘矩阵与微型机的连接方法是采用I/0接口芯片,如8155、8255等。有时为简单起见,也可采用锁存器,如74LS273、74LS244,74LS373等。微机控制技术3.1.3矩阵键盘接口技术键盘处理程序的关键是如何识别键码,微型机对键盘控制的办法是“扫描”。根据微型机进行扫描的方法又可分作程控扫描法和中断扫描法两种。微机控制技术1.程控扫描法例:4×8矩阵组成的32键盘与微型机接口电路。图3—5用8255A接口的4×8键盘矩阵微机控制技术(1)电路分析★8255A端口C为行扫描口,工作于输出方式,端口A工作于输入方式,用来读入列值。★在每一个行与列的交叉点均接一个按键,故4×8共32个键。为了说明各键的具体位置,事先按一定顺序给每一个键编一个号,如图中0、1、2、3…1E、1F等,称其为键值。所谓键译码就是找出每个键的键值,然后根据键值确定其是功能键还是数字键,并分别进行处理。微机控制技术3.1.3矩阵键盘接口技术(2)程控扫描方法★首先判断是否有键按下。其方法是使所有的行输出均为低电平,然后从端口A读入列值。如果没有键按下,则读入值为FFH,如果有键按下,则不为FFH。★去除键抖动。若有键按下,则延时10~20ms,再一次判断有无键按下,如果此时仍有键按下,则认为键盘上有一个键处于稳定闭合期。微机控制技术3.1.3矩阵键盘接口技术★若有键闭合,则求出闭合键的键值。方法:对键盘逐行扫描。先使PC0=0,然后读入列值,看其是否等于FFH,若等于FFH,说明该行无键按下。再对下一行进行扫描(即令PC1=0),如果列值不等于FFH,则说明该行有键按下,求出其键值。求键值时,要采用行值、列值两个寄存器(或存储器)。每扫描一行后,如无键按下,则行值寄存器加08H;若有键按下,行值寄存器保持原值,并转至求相应的列值。此时,首先将列值读数右移,每移位一次列值寄存器加1,直到有键按下(低电平)为止。最后将行值和列值相加,即得到键值(十六进制数)。例如,X2行Y3列键被按下,求其键值。微机控制技术★扫描X0行(PC0=0),无键按下,行值寄存器=00H十08H;★扫描Xl行,仍无键按下,再加08H,即行值寄存器=08H十08H=10H;★扫描X2行,此时发现有键按下(列值不等于FFH),则行值寄存器=10H,不变,转向求列值。具体作法是,将列值读数逐位右移,第一次移位,无键按下,列值寄存器=00H十01H=01H;第二次移位,无键按下;第三次移位仍无键按下,列值寄存器=01H十01H十01H=03H;当第四次移位时,发现有键按下(低电平),列值寄存器=03H,不变。★将行值与列值相加,即行值寄存器十列值寄存器=10H十03H=13H,故该键值为13H。微机控制技术3.1.3矩阵键盘接口技术若想得到十进制键值,可在每次相加之后进行DAA修正。★为保证键每闭合一次,CPU只作一次处理,程序中需等闭合键释放后才对其进行处理。完成上述任务的程控扫描程序流程图:微机控制技术图3—6程控扫描法程序流程图微机控制技术3.1.3矩阵键盘接口技术2.定时扫描法定时扫描法方式是CPU每隔一定的时间(如10ms)对键盘扫描一遍。当发现有键被按下时,便进行读入键盘操作,以求出键值,并分别进行处理。定时时间间隔由单片机内部定时/计数器产生。这样可以减少计算机扫描键盘的时间,以减少CPU开销。具体做法是,当定时时间到期时,定时器自动输出一脉冲信号,使CPU转去执行扫描程序。微机控制技术3.1.3矩阵键盘接口技术这种方法扫描和求键值,以及区别功能键与数字键的方法与程序扫描法类似。但有一点需指出,即采用定时扫描法时,必须在其初始化程序中,对定时器写入相应的命令,使之能定时产生中断,从而定时完成扫描任务。为简化设计,在比较大的系统中,也可以每隔一定长度的程序设置一次键盘查询程序。微机控制技术3.1.3矩阵键盘接口技术3.中断扫描法在程控扫描法中,无论有没有键入操作,CPU总要在一定的时间进行扫描,无疑将占用CPU的大量时间,这对于微型机控制系统和智能化仪器都是很不利的。为了更进一步节省CPU的时间,可采用中断扫描法。这种方法的实质是,当没有键入操作时,CPU不对键盘进行扫描,以节省出大量的时间对系统进行监控和数据处理。一旦键盘输入,则向CPU申请中断。CPU响应中断后,即转到相应的中断服务程序,对键进行扫描,以便判别键盘上闭合键的键号,并作相应的处理。微机控制技术图3—7中断扫描方式原理图微机控制技术3.1.3矩阵键盘接口技术当没有键按下时,所有列线均为1,经8与非门输出一低电平到中断申请线,此时没有中断申请。一旦某一个键按下以后,则高电平经过按键加到该键所在行的二极管正端,使二极管导通,同时,该列线输出为低电乎,使与非门74LS30输出为高电平,从而使发生跳变,向CPU申请中断。CPU响应后,即转到中断扫描程序,查出键号,且作相应处理。其扫描方法与程控法相同,不同的只是当有键按下时,才进行扫描。若无键按下,CPU执行主程序或处理其它事情。这样可节省大量的空扫描时问,从而提高了计算机的工作效率。IRQ2IRQ2微机控制技术3.2LED显示接口技术常用的显示器件有:★显示和记录仪表显示记录仪表能连续进行显示和记录,但价钱比较贵,且为模拟显示,读数不方便,有一定的误差,★CRT显示终端CRT终端是目前微型机控制系统中最常用的显示设备。它直观、灵活,不但可显示数字,而且可以显示画面及报表,如生产流程图、报警画面、动态趋势图、棒状图,以及状态和回路查询画面等。微机控制技术3.2LED显示接口技术★LED或LCD显示LED数码管由于结构简单、体积小、功率低、响应速度快、易于匹配、寿命长、可靠性高等优点,目前已被微机控制系统及智能化仪表广泛采用。★大屏幕显示;大屏幕显示具有显示清晰、视觉范围宽广等优点,主要用于车站、码头、体育场馆、大型生产装置的现场显示在这一节里,主要介绍LED数码管显示。微机控制技术3.2.1LED数码管的结构及显示原理发光LED显示器是微型机应用系统中的廉价输出设备,它由若干个发光二极管组成,能显示出各种字符、常用的器件有七段及米字型显示器。1.LED显示器的结构及原理LED显示器是由发光二极管显示字段组成的,由于制造材料的不同,可相应发出红、黄、兰、紫等各种单色光。微机控制技术3.2.1LED数码管的结构及显示原理(1)结构发光二极管

1 / 38
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功