• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 测试测量 > 技术文章 > 测控系统的微机化监控程序设计

测控系统的微机化监控程序设计

录入:edatop.com    点击:

引言

监控程序负责系统中全部硬件和软件资源的分配、调度工作,是系统设计中的一个重要组成部分。它提供用户接口, 使用户获得友好的工作环境, 使计算机获得很高的效率和高度的自动化。随着系统结构的日益复杂和功能的全面, 其监控程序的设计难度也越来越大。监控程序的质量直接影响系统的操作和运行,一个高质量的监控程序应是功能齐全、键数合理、操作方便、容错性好。监控程序在一定的意义上就是键盘分析程序,因此如何在面积较小的面板上设计一个功能多、操作简便的键盘操作系统成为智能仪器设计中非常重要的任务之一。

键盘上的按键可分为2类: 单义键和多义键。单义键,是指按键的含义是固定的,一个按键代表一个命令或一个数字,执行一种功能,即一键一义;多义键是指一个按键的键义不是单一的,而是具有多重含义,多个键互相配合才产生一个动作,执行一种功能,即一键多义。下面结合实例介绍这2种键盘监控程序的设计。

1 单义键监控程序的设计

CPU对键盘管理的方式一般有3种,即查询法、中断法和定时查询法。这3种方式的主要差别在于CPU转向键盘处理程序的方法。如果从程序设计逻辑讲,都是“有键按下则转去处理”。因此它们的键盘管理程序是可以相互转化的。下面以查询法为例,介绍一键一义键盘管理程序的设计。

微处理器周而复始地扫描键盘,当发现按键时,首先判别是命令键还是数字键。若是数字键,则把按键读数读入存储器,通常还进行显示;若是命令键,则根据按键读数查阅转移表,以获得处理子程序的入口。设一4×8的键盘,其中下面16个键为数字键,上面16个键为功能键。通过键盘扫描已经获得按键的编码,并且将该编码存储于累加器A中。那么,当键码小于10H时为数字键,否则为功能键。具体程序如下:

MOV R1,A

CLR C

SUBB A,#10H

JC DIGIT

MOV DPTR,#TBJ2

MOV A,R1

ANL A,#0FH

ADD A,A

JMP @A+DPTR

TBJ2: AJMP PROG1

AJMP PROG2

……

AJMP PROGn

DIGIT:……

一键一义键盘管理的核心是一张一维的转移表,在转移表内顺序登记了各个处理子程序的转移命令。

2 多义键监控程序的设计

对于功能复杂的微机化系统,若仍然采用“一键一义”,则按键使用往往过多,不但增加了费用,而且面板难以布置,操作也不方便。因此,有些键盘设计成一键多义方式。在一键多义的情况下,一个命令不是由按键,而是由一个按键序列组成。也就是说,对于一个按键的解释除了本次的按键外,还取决于这之前按了一些什么键。一键多义的监控程序有2种方法,即转移表法和状态转移法。下面对这两种方法进行介绍。

2.1 转移表法实现多义键监控程序

多义键的监控程序仍然可以采用转移表法进行设计,不过这时要用多张转移表。首先,要判断一个按键序列是否构成了一个合法的命令。若已经构成了合法命令,则根据前几个按键把控制引向某张合适的转移表,根据最后一个按键编码查阅该转移表,就找到了要求的子程序入口。

以一个8回路微机温控仪为例。该系统中有6个按键:C(回路号为1~8,第8回路为环境温度补偿,其余为控温点)、P(参数号,有实测值、设定值、P、I、D参数,上下限报警值,输出控制值等8个参数)、 Δ(加1)、Δ(减1)、R(运行)和S(停止运行)。显然,这些按键都是一键多义的。 Δ和Δ键的工作执行与否,取决于前面按过的C和P键;R键的功能执行与否,取决于当前的C值。用转移表法实现这些功能的流程如图1所示。

edatop.com

图1 转移表法实现多义键监控程序流程

从流程图可以看出,用转移表法实现多义键的设计需要两级转移表。

一级转移表

TBJ1 AJMP RUM

AJMP STOP

AJMP INCR

AJMP DECR

AJMP CHAL

AJMP PARA

二级转移表

TBJ2 AJMP C1P0

……

AJMP C1P7

AJMP C2P0

点击浏览:矢量网络分析仪、频谱仪、示波器,使用操作培训教程

上一篇:基于虚拟仪器技术的引信软件安全性测试
下一篇:RTOS视频网络检测设计

微波射频测量操作培训课程详情>>
射频和天线工程师培训课程详情>>

  网站地图