- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
电力变压器直流电阻的快速测量方法----软件设计
5.2电力变压器直流电阻测试仪的软件设计
5.2.1总体设计思路
软件系统按其功能主要分为三部分:准备程序、键功能程序和系统控制程序,软件的主程序框图如图5-7所示
当装置上电或复位时,程序首先进入主程序中的初始化模块,进行各芯片寄存器的初始化。当出现故障时,进行故障处理。无故障时,初始化完成后,装置运行键盘监控和显示程序,如有键按下,则转到相应的键处理程序,否则循环运行键盘监控和显示程序。
5.2.1.1准备程序
准备程序应完成系统键操作之前的准备工作。它包括:
(1)初始化。将系统中所有的命令、状态以及有关的存储单元置位成初始状态。
(2)系统测试。利用测试程序检查程序存储器、数据存储器以及硬件功能是否正常。
(3)提示符显示。当完成初始化设置和系统测试正常以后。应在显示器上显示正常标记,等待键扫描。若测试不正常,可再次初始化,进行系统测试或用手动按钮使系统强行复位。
(4)键扫描等待。对所有按键进行查询,没有键按下时,继续显示提示符。当有键按下时,便进入键功能软件控制。
当系统上电后,在正常情况下,显示正常状态提示符号,并准备接收按键的操作控制。
5.2.2自检程序
当有按键按下,键盘监控程序获得自检命令后,装置进入自检程序。微机装置特有的工作方式和很强的处理能力为实现自动检测提供了方便,有了CPU这种智能部件。可以主动的去查找和发现问题,使得微机保护装置可以具有较完善的自动检测功能。
5.2.2.1 CPU的检测
CPU的检测基本方法是利用看门狗定时电路,该电路不能被CPU禁止,但可以被CPU清零。在测量装置中由于为了简化硬件电路的设计以及降低装置成本,未采用看门狗电路,而采用纯软件的看门狗来保证程序的正常运行。由于80C196单片机中没有专门的监督定时器Watchdog Timer,故采用80C196的T 0定时/计数器来作为看门狗定时器,它所完成的功能是:当系统由于干扰或其他扰动导致软件运行紊乱时,它能够使系统定时自动复位,使80C196从0000H开始重新执行程序,因此它能够有效的监视系统软件的运行是否正常。
80C196的T0是一个16位的定时/计数器,用它作为看门狗定时器,定时器的输入时钟脉冲是晶振输出经12分频后得到的,即每个机器周期定时器加1,设置定时约为16ms(晶振为6M)。程序中首先设置T 0为高优先级中断,并对T 0进行初始化,选择工作方式1,输入初值#0E00H,当定时器发生溢出时(8K个机器周期),进入T 0中断服务程序,在T 0中断响应中,使程序重新开始从0000H开始执行,使得系统能在收到干扰程序跑飞的情况下能自动恢复。在用户软件中,应每隔不到8K机器周期的时候,调用一次喂狗程序,将T 0重新置初值,使定时器重新开始工作,不致产生导致用户系统复位的操作。