资源描述:
《《外设及控制技术》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章智能仪器外设及控制技术智能仪器内含CPU,能够进行一定的运算和控制,往往需要操作人员与智能仪器进行人机交互,这些都要通过智能仪器的人机界面来完成。智能仪器的人机界面由一些专用的输入/输出器件来实现,通常采用的器件有键盘、LED、LCD显示器、打印机等,本章各节将分别介绍它们的接口与控制方法。3.1键盘接口技术硬件—指键盘的结构及其与主机的连接方式。软件—指对按键操作的识别与分析,称为键盘管理程序。编码键盘:按键键盘和专用键盘编码器构成。当某键被按下时,编码器自动产生相对应的按键代码并输出一选通脉冲与CPU进行信息联络。键盘处理软件简单
2、,硬件较复杂。非编码键盘:当某键被按下时,仅送出一个简单的闭合信号,对应按键代码的确定需借助软件来完成。软件较复杂,占用较多CPU时间。3.1.1非编码键盘系统一、非编码键盘独立式键盘矩阵式键盘m×n矩阵键盘需m+n条检测线一键一线在设计键盘接口时,着重要解决以下几个问题:1.开关状态的可靠输入——可设计硬件去抖动电路或设计去抖动软件。2.键盘状态的监测方法——中断方式还是查询式。3.键盘编码方法。4.键盘控制程序的编制。键盘及管理程序的基本任务(1)识键:判断是否有键按下。若有,则进行译码;若无,则等待或转做别的工作。(2)译键:识别出哪
3、一个键被按下并确定被按下键的键值。(3)键值分析:根据键值,找出对应处理程序的入口并执行之。二、非编码键盘的工作方式程序控制扫描方式—只有在CPU空闲时,才调用键盘扫描子程序,响应键盘的输入请求。中断扫描方式—当键盘上有键按下时产生中断请求,CPU响应中断,执行中断服务程序,判别键盘上闭合键的键号,并作相应的处理。定时扫描方式—利用专门的定时器来产生定时中断请求,CPU响应定时溢出中断后对键盘进行扫描以响应键盘的输入请求。三、非编码键盘的扫描技术键盘接口的首要任务是按键的识别。按键的识别有两种方法:扫描法和线反转法。1、逐行扫描法—在确认有
4、键按下后,用软件逐行输出低电平值,从扫描的行号和出现低电平值的列号,共同判断就可知是哪一键按下。步骤:判断是否有键按下有键按下,则延时10ms,再判断是否有键按下确实有键按下,则求出按下键的键值逐行扫描法键盘特征码每个键对应一个行号、一个列值和键值2、线反转法特点:不管键盘矩阵的规模大小,均进行两次读键。将两次读键信息进行组合即可得到按键的特征码,通过查表得到按键的顺序编码。键码转换表键名特征码顺序码键名特征码顺序码K0E7H00HK8B7H08HK1EBH01HK9BBH09HK2EDH02HKABDH0AHK3EEH03HKBBEH0B
5、HK4D7H04HKC77H0CHK5DBH05HKD7BH0DHK6DDH06HKE7DH0EHK7DEH07HKF7EH0FH空键FFHFFH采用线反转法获取特征码和顺序码的程序:KEY1:MOVP1,#0FH;高四位输出低电平MOVA,P1;从低四位读取列信息ANLA,#0FH;分离列信息MOVB,A;保存列信息MOVP1,#0F0H;低四位输出低电平MOVA,P1;从高四位读取行信息ANLA,#0F0H;取P1高四位送入AORLA,B;合成特征码CJNEA,#0FFH,KEY11;按键否?RET;未按键返回KEY11:MOVB,A;
6、取特征码MOVDPTR,#TABLMOVR1,#0FFH;顺序码初始化KEY12:INCR1MOVA,R1MOVCA,@A+DPTRCJNEA,B,KEY13;未找到,判是已查完MOVA,R1;找到取顺序码RETKEY13:CJNEA,#0FFH,KEY12RETTABL:DB0E7H,0EBH,0EDH,0EEHDB0D7H,0DBH,0DDH,0DEHDB0B7H,0BBH,0BDH,0BEHDB77H,7BH,7DH,7EHDB0FFH(空键特征码)3.1.2、编码键盘采用软件方法实现对键盘的扫描,程序较复杂,而且实时性差。要简化键盘
7、编码所需软件和减少占用CPU的时间可采用编码器及可编程接口芯片构成编码键盘。编码键盘的基本任务是识别按键,提供按键读数,一个高质量的编码键盘还应具有消除键抖动、处理同时按键等功能。键盘显示器接口芯片3.1.3键盘监控程序设计键盘监控程序的任务是在扫描键盘后,根据键值找出对应处理程序的入口并执行之。键盘中按键可以分为单义键和多义键。单义键即一键一义,主要用于功能比较少的仪器系统中;多义键即一键具有两个或两个以上含义,多用于功能比较复杂的智能化仪表中。一个完整的命令通常不是由一次按键操作完成,而是需要按两次以上的键才能完成,且这些键的操作要遵守
8、一定的顺序,称为按键序列。对于单义键或双义键构成的键盘,键值分析程序一般采用直接分析法;对于由多义键构成的键盘,键盘分析程序一般采用状态分析法。直接分析法根据当前按键的键值,把控