计算机测试系统02-_第1页
计算机测试系统02-_第2页
计算机测试系统02-_第3页
计算机测试系统02-_第4页
计算机测试系统02-_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章第二章 监控程序的设计监控程序的设计l监控程序的功能和组成监控程序的功能和组成l监控主程序和初始化管理监控主程序和初始化管理l键盘管理程序的设计键盘管理程序的设计l显示、中断与时钟管理显示、中断与时钟管理l硬件故障的自检硬件故障的自检2.1监控程序的功能和组成监控程序的功能和组成l监控程序的主要作用是及时响应来自系统或仪监控程序的主要作用是及时响应来自系统或仪器内部的各种服务请求,有效的管理测控系统器内部的各种服务请求,有效的管理测控系统自身软、硬件及人自身软、硬件及人-机联系设备,与系统中其机联系设备,与系统中其它设备交换信息,并在系统出现故障时及时作它设备交换信息,并在系统出现故障时

2、及时作出相应的处理。出相应的处理。测控系统测控系统硬件硬件软件软件监控程序监控程序应用软件应用软件 监控程序管理整个系统的工作,直接影响系监控程序管理整个系统的工作,直接影响系统的操作和运行,是软件的核心。统的操作和运行,是软件的核心。监控程序的具体功能监控程序的具体功能l初始化管理初始化管理l键盘和显示管理键盘和显示管理l中断管理中断管理l时钟管理时钟管理l故障自诊断故障自诊断监控监控主程主程序序初始化管理初始化管理键键 盘管理盘管理显显 示管理示管理中中 断管理断管理时时 钟管理钟管理自自 诊诊 断断器件初始化器件初始化堆栈初始化堆栈初始化参数初始化参数初始化七段显示器管理七段显示器管理指

3、指 示示 灯灯 管管 理理图图21(a) 监控程序基本组成监控程序基本组成2.2监控主程序和初始化管理监控主程序和初始化管理l监控主程序进行识别命令,解释命令并获得完监控主程序进行识别命令,解释命令并获得完成该命令的相应模块的入口,引导测控程序进成该命令的相应模块的入口,引导测控程序进入正常运行,并协调各部分软硬件进行工作。入正常运行,并协调各部分软硬件进行工作。初始化管理初始化管理l初始化管理主要包括可编程器件初始化、堆栈初始化管理主要包括可编程器件初始化、堆栈初始化和参数初始化三部分。初始化和参数初始化三部分。2.3键盘管理程序的设计键盘管理程序的设计l键盘管理程序的作用是根据获取的按键编

4、码,键盘管理程序的作用是根据获取的按键编码,转入相应的服务程序。转入相应的服务程序。本地:按键本地:按键远地:总线命令远地:总线命令命令输入命令输入按键分类按键分类功能键功能键数字键数字键单义键:一个键对应一个功能单义键:一个键对应一个功能多义键:功能由按键序列决定多义键:功能由按键序列决定合法命令合法命令非法命令非法命令2.3.1按键开关的软件联接方式按键开关的软件联接方式l按键开关在机械上存在闭合按键开关在机械上存在闭合/断开两种状态,断开两种状态,在系统和仪器中经常需要把一个和几个键的这在系统和仪器中经常需要把一个和几个键的这两种状态进行组合使用,即所谓的两种状态进行组合使用,即所谓的“

5、互锁互锁”和和“自锁自锁”功能。功能。“互锁互锁”和和“自锁自锁”l“互锁互锁”和和“自锁自锁”功能主要由软件实现。功能主要由软件实现。l软件互锁:同类按键中的一个按下时,利用软软件互锁:同类按键中的一个按下时,利用软件使具有正在工作的另一键功能退出。件使具有正在工作的另一键功能退出。l软件自锁:某个按键奇数次时,执行该键功能,软件自锁:某个按键奇数次时,执行该键功能,按偶数次时退出该功能。按偶数次时退出该功能。图图22 数字电压表量程键数字电压表量程键J0J1J2J3Ui到后续电路到后续电路图图23 量程键软件互锁流程图量程键软件互锁流程图 键中断处理键中断处理 返回返回 K1? K2? K

6、3? 量程键?量程键? 键释放?键释放? 200V量程码状态量程码状态 20V 量程码状态量程码状态 2V 量程码状态量程码状态 0.2V 量程码状态量程码状态 按量程码及状态切换开关,点亮灯按量程码及状态切换开关,点亮灯 其他其他 处理处理 返回返回 延时延时20ms Y N Y Y Y N N N Y N K0? YN200V量程码状态量程码状态图图24平均平均值键软件自值键软件自锁流程图锁流程图键盘的主要操作步骤键盘的主要操作步骤识键识键评键评键键义分析键义分析单纯查询法单纯查询法定时查询法定时查询法中断法中断法键值获取方法键值获取方法键义分析键义分析直接分析法直接分析法状态变量法状态变

7、量法2.3.2直接分析法直接分析法l直接分析法指只需要根据当前按键的编码,把直接分析法指只需要根据当前按键的编码,把程序直接转向相应的处理子程序的入口,而无程序直接转向相应的处理子程序的入口,而无需知道此前按键的情况。需知道此前按键的情况。l直接分析法适用于功能和按键较少的情况。如直接分析法适用于功能和按键较少的情况。如单义键。单义键。其关键是转移表。其关键是转移表。l例:设功能键编码为例:设功能键编码为10H19H低8位高8位低8位高8位一维转移表TAB1子程序1子程序2中断程序中断程序ANL AANL A,#0FH#0FHMOV BMOV B,#02H#02HMUL ABMUL ABMOV

8、 R2MOV R2,A AMOV DPTRMOV DPTR,#TAB1#TAB1MOVC AMOVC A,A+DPTRA+DPTRMOV R0,AMOV R0,AINC DPTRINC DPTRMOV A,R2MOV A,R2MOVC AMOVC A,A+DPTRA+DPTRMOV R1,AMOV R1,A主程序主程序MOV A,R0MOV A,R0MOV DPL,AMOV DPL,AMOV A,R1MOV A,R1MOV DPH,AMOV DPH,AMOV A,#00HMOV A,#00HJMP A+DPTRJMP A+DPTRl功能较多的系统应用一键多义。此时一个命令功能较多的系统应用一键

9、多义。此时一个命令不是由一次按键,而是由一个按键序列组成。不是由一次按键,而是由一个按键序列组成。l用直接分析法来设计一键多义的系统需要多张用直接分析法来设计一键多义的系统需要多张转移表。转移表。例:电压频率计例:电压频率计l共个按键共个按键:、 、 、 、 l初始化后按初始化后按测频率、按测频率、按测周期测周期 、按、按测时间间隔、测时间间隔、 按按测电压。此时测电压。此时、 为主功能键。为主功能键。l按按 后按后按 ,规定闸门时间或量程。,规定闸门时间或量程。l按按后按后按 ,则送入一偏移量。,则送入一偏移量。l为单义键,有效时测量结果加上偏移量。为单义键,有效时测量结果加上偏移量。 l合

10、法操作合法操作: + +或:或: + +l非正规操作:非正规操作: 图图2-6 2-6 一键多义监一键多义监控主程序流程框图控主程序流程框图2.3.3状态变量法状态变量法l系统的状态是表示系统的最小一组变量。系统的状态是表示系统的最小一组变量。l通过通过t=t0的状态变量和的状态变量和tt0时的输入激励,利时的输入激励,利用系统模型,就可以求得用系统模型,就可以求得tt0的任何时刻系统的任何时刻系统的行为与状态。的行为与状态。ltt0时刻系统状态与时刻系统状态与t=t0的状态、的状态、 tt0时时的输入激励、的输入激励、系统模型,三个因素有关。系统模型,三个因素有关。l对于按键,这三个因素为对

11、于按键,这三个因素为按键前的状态、按键前的状态、 按键的键值、按键的键值、 程序结构。程序结构。l每个状态中,各按键有确定的含义,同一状态每个状态中,各按键有确定的含义,同一状态不同按键有不同含义,不同状态同一按键有不不同按键有不同含义,不同状态同一按键有不同含义。同含义。l状态变量法设计按键管理程序的实质是将仪器状态变量法设计按键管理程序的实质是将仪器工作的过程划分为若干工作的过程划分为若干“状态状态”,在,在任一状态任一状态下,每个按键有确定的含义,即执行某个子程下,每个按键有确定的含义,即执行某个子程序且变迁到下一个状态。序且变迁到下一个状态。l状态变量法适合设计复杂的系统,如多义键状态

12、变量法适合设计复杂的系统,如多义键。状态图状态图l常用状态图表示系统状态的变化。状态图中以常用状态图表示系统状态的变化。状态图中以圆圈代表不同的状态,以箭头代表状态之间的圆圈代表不同的状态,以箭头代表状态之间的变化,并在箭头上标注发生状态改变的条件和变化,并在箭头上标注发生状态改变的条件和执行的操作。执行的操作。l在设计状态图时,为简化状态图,方便设计,在设计状态图时,为简化状态图,方便设计,可以加入可以加入“伪状态伪状态”。系统不会处于伪状态,当。系统不会处于伪状态,当按某按键使系统转变到伪状态时,将以该按键按某按键使系统转变到伪状态时,将以该按键为条件继续从伪状态转变到下一个状态。为条件继

13、续从伪状态转变到下一个状态。状态表状态表l仪器及系统的监控主程序在任何一个状态均可仪器及系统的监控主程序在任何一个状态均可对每个按键作出响应,即状态与每一个按键的对每个按键作出响应,即状态与每一个按键的组合均可对应执行一个子程序并变迁到下一个组合均可对应执行一个子程序并变迁到下一个状态(称为次态)。这可以用一个矩阵表示,状态(称为次态)。这可以用一个矩阵表示,称为状态矩阵或状态表。称为状态矩阵或状态表。l对于一个具体系统,并非所有状态和按键的组对于一个具体系统,并非所有状态和按键的组合都有意义。合都有意义。NEXSTNEXST* * *表示次态表示次态 SUBSUB* * *表示要执行的操作表

14、示要执行的操作l状态表规定了仪器当前状态与其对应的下一状状态表规定了仪器当前状态与其对应的下一状态之间的转变关系,指出了完成这种转变的前态之间的转变关系,指出了完成这种转变的前提条件(按键),并注明在状态转变时所对应提条件(按键),并注明在状态转变时所对应采取的行动(执行子程序)。采取的行动(执行子程序)。l状态变量法设计键盘管理程序可归结为根据现状态变量法设计键盘管理程序可归结为根据现态和当前按键这两个关键字来查阅状态表,给态和当前按键这两个关键字来查阅状态表,给程序设计提供了很大方便。程序设计提供了很大方便。例:函数发生器键盘管理程序的设计例:函数发生器键盘管理程序的设计l仪器功能:仪器功

15、能::设置函数波形。设置函数波形。 后接后接正弦波正弦波方波方波三角波三角波正向锯齿正向锯齿波波反向锯齿波反向锯齿波:设置输出信号频率。:设置输出信号频率。:设置输出信号幅值。:设置输出信号幅值。:设置输出信号直流偏置。:设置输出信号直流偏置。:选择工作方式。:选择工作方式。 后接后接连续波输出连续波输出触发输出触发输出门控输出门控输出:偶次为正,奇次为负。:偶次为正,奇次为负。:表示乘:表示乘10的幂次方。的幂次方。如如 ,表示设,表示设置幅值为置幅值为6.25V。如如 表示设置正弦波输出。表示设置正弦波输出。2.状态图的设计状态图的设计l状态变量法首先要编制一组键语状态图,用图形状态变量法

16、首先要编制一组键语状态图,用图形来表示与按键相对应的完整的状态变迁过程。来表示与按键相对应的完整的状态变迁过程。图图29 AMPL键语状态图键语状态图 输入输入 ,表示设置幅值为,表示设置幅值为568。键名FNKYCNUMBR键名FNKYCNUMBR010FREQ30111AMPL20212FUNC40313OFST50414MODE60515/70616E80717ON90818OFFA0919表表2-1 按键编码表按键编码表键名键名FNKYTNEXSTACTN0PST0AMPL210FREQ330FUNC460OFST550MODE670ON981OFFA82080PST1/713DIG1

17、14E820000PST2DIG125/726000PST5DIG15A/75B000PST6DIG169000PST7DIG17C000PST8000键语状态表键语状态表 PST3DIG137E840000PST4DIG148/746000键码次态子程序读键码读键码查找下态查找下态NEXST及执行子程序及执行子程序ACTN0入口入口根据现态根据现态PREST求现态首址求现态首址PSTn由键码求出由键码求出FNKYC及及NUMBRNEXST PREST执行相应的执行相应的ACTN0,由按键由按键情况判别或输出或等新的中断情况判别或输出或等新的中断YN键中断键中断图图2-13状态变量法监控主程序

18、流程状态变量法监控主程序流程PREST=“0”?读键码读键码查找下态查找下态NEXST及执行子程序及执行子程序ACTN0入口入口根据现态根据现态PREST求现态首址求现态首址PSTn由键码求出由键码求出FNKYC及及NUMBRNEXST PREST执行相应的执行相应的ACTN0,由按键由按键情况判别或输出或等新的中断情况判别或输出或等新的中断YN键中断键中断图图2-13状态变量法监控主程序流程状态变量法监控主程序流程PREST=“0”? 开始开始 用用 PREST 查表求查表求PSTn 地址地址 P PST0PSTn A (P) P P+2 A (A).MASKF 得得 FNKYT(表格值表格

19、值) A=0? A=FNKYC? A (P) ,A (A).MASKN1 A 左移三位,左移三位,B (P+1) B (B)MASKN2 ,B 右移五位右移五位 A (A)+(B) 得得 NEXST A (P+1),A (A).MASKA 得得 ACTNO 返回返回 Y N N Y 屏蔽字屏蔽字 MASKFFCH MASKN103H MASKN2E0H MASKA1FH 图图 214 查查找子程找子程序序 状态变量法设计键盘管理程序的步骤状态变量法设计键盘管理程序的步骤1.根据仪器功能设计按键数和状态数,列出按键根据仪器功能设计按键数和状态数,列出按键编码表。编码表。2.根据仪器功能画出与按键

20、对应的状态图。根据仪器功能画出与按键对应的状态图。3.列出在完成状态转变时所应执行的子程序功能列出在完成状态转变时所应执行的子程序功能表。表。4.根据状态图和子程序表,设计状态表。根据状态图和子程序表,设计状态表。5.根据当前状态和所按按键这两个关键字查找状根据当前状态和所按按键这两个关键字查找状态表,执行相应子程序,完成状态转换。态表,执行相应子程序,完成状态转换。查找状态表查找状态表l利用识别键后的键号,获得对应的利用识别键后的键号,获得对应的FNKYC和和NUMBR。l根据现态查表根据现态查表2-4,获得现态首地址。,获得现态首地址。l从现态首地址开始查图从现态首地址开始查图2-12,寻

21、找,寻找FNKYC,并进一步找出并进一步找出NEXST和和ACTN0。状态变量法的优点状态变量法的优点l应用状态表,统一处理任何一组按键应用状态表,统一处理任何一组按键-状态的组状态的组合,使复杂的按键序列的编译过程变得简洁、直合,使复杂的按键序列的编译过程变得简洁、直观、便于优化,设计程序易懂。观、便于优化,设计程序易懂。l翻译、解释按键序列与执行子程序完全分离,因翻译、解释按键序列与执行子程序完全分离,因此按键监控程序的设计不受其他程序的影响,可此按键监控程序的设计不受其他程序的影响,可以单独进行,避免两者交叉纠缠。以单独进行,避免两者交叉纠缠。l若仪器功能发生变化,监控程序结构不变,只需若仪器功能发生变化,监控程序结构不变,只需要改变状态表。要改变状态表。l系统越复杂、按键复用越多,效率越高。系统越复杂、按键复用越多,效率越高。2.4显示、中断与时钟管理显示、中断与时钟管理l显示是实现人显示是实现人-机联系的主要途径,计算机测控机联系的主要途径,计算机测控系统的显示方式主要有:模拟显示、数字显示系统的显示方式主要有:模拟显示、数字显示和模拟、数字混合显示。和模拟、数字混合显示。l显示管理软件基本任务包括:显示管理软件基本任务包括: 1.显示更新数据;显示更新数据; 2.多参数的巡回显示和定点显示管理;多参数的巡回显示和定点显示管理; 3.指示灯管理等。指示灯管理等。中断

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论