电磁流量计在自动抄表的应用与探讨 四十五
对变量R 、ISTYLE赋值,建一个表IPCTAB来存放屏幕显示的不变的内容,共有1子表,每个子表最后一个字节都是FEH,另建一个表PICPAJAB来存放需要变化的参数,存储类型为参数个数十参数表(8字节来表示1个参数)o在显 示 一 屏时,先给屏层变量RM‘PICNO赋值,主菜单窗口的屏层变量值为0,对应的8个子菜单项的屏层变量值就为菜单值,密码保护窗口屏层变量值为9,工作窗口屏层变量值为10。根据屏层变量值调对应表PIC止rAB的一个子表数值,根据数值的定义意义写数字或汉字,直到取到表示屏幕结束的FEH值。再根据屏层变量值调对应表PICpA一TAB的一个子表数值,读出属于这个屏幕的参数总数,读取参数表,直至所有参数显示完毕。在主菜单窗口用上下左右按键选择子菜单时,把某子菜单块的内码值取反反向显示表示选中。
根据参数存放的RAM地址和字节数取出参数值,经过可能的BCD码换算,在行列号处写入对应长度的数字,根据小数点和符号进行显示调整。而参数类型字节(字节八)存放的是这个参数的另一个属性,其数值对应的具体属性见表4.4。根据参数类型值来确定参数的合理性,并用这个值来做散转程序执行对应子程序。
如果程序检测到有键被按下,先读入键值并判断是哪一个键被按下,然后散转调用相应的处理程序。
由于显示屏幕较多,在不同的屏幕按键的作用可能是不同,这里用屏层号来散转程序,不同的屏幕对应不同的子程序,也可能在几个屏幕,某个按键功能是相似的,可以通过调用同一个子程序来简化。下面是以确定键为例的MsP430的汇编部分程序。
电磁流量计