程序控制指令
发布时间:2019/6/7 20:48:31 访问次数:1967
程序控制指令
1 有条件结束指令EA21FC2AG
END,有条仵结束指令,指令根据前一个逻辑条件终止主用户程序。有条件结束指令用在无条件结束指令(MEND)之前,用户程序必须以无条件结束指令结束主程序。可以在主程序中使用有条件结束指令,但不能在子程序或中断程序中使用。STEP7Micro/WIN自动在主程序中增加无条件结束指令。
2暂停指令
STOP,暂停指令,通过暂停指令可将⒏200CPU从RUN(运行)模式转换为STOP(暂停)模式,中止程序执行。如果在中断程序中执行ST(P(暂停)指令,中断程序立即终止,并忽略全部待执行的中断,继续扫描主程序的剩余部分。在当前扫描结束时,从RUN(运行)模式转换至ST(P(暂停)模式。
3监控定时器复位指令
WDR,监控定时器复位指令,指令重新触发叩⒓00CPU的系统监控定时器(WDT),扩展扫描允许使用的时间,而不会出现监控程序错误。WDR指令重新触发WDT,可以增加一次扫描时间。
为了保证系统可靠运行,PI£内部设置了系统监控定时器(WDT),用于监控扫描周期是否超时。当扫描到WDT时,WDT将复位。WDT有一设定值(100~300ms),系统正常工作时,所需扫描时间小于WDT的设定值,WDT及时复位。系统在发生故障的情况下,扫描时间大于WDT的设定值,该定时器不能及时复位,则报警并停止CPU运行,同时复位输出。这种故障称为WDT故障,以防止因系统故障或程序进入死循环而引起扫描周期过长。
系统正常工作时,有时会因为用户程序过长或使用中断指令或循环指令使扫描时间过长而超过WDT的设定值。为防止这种情况下WDT动作,可使用监控定时器复位指令(WDR),使WDT复位。
使用监控定时器复位指令时应当小心。如果使用循环指令阻止扫描完成或严重延迟扫描完成,下列程序只有在扫描循环完成后才能执行:通信(自由口模式除外);I/O更新(立即VO除外);强制更新;SM位更新(SM0、SM5~SM29除外);运行时间诊断程序;中断程序中的STOP指令;扫描时间超过25s,100ms和10ms定时器将不能正确计时。程序实例:如图544所示。
程序控制指令
1 有条件结束指令EA21FC2AG
END,有条仵结束指令,指令根据前一个逻辑条件终止主用户程序。有条件结束指令用在无条件结束指令(MEND)之前,用户程序必须以无条件结束指令结束主程序。可以在主程序中使用有条件结束指令,但不能在子程序或中断程序中使用。STEP7Micro/WIN自动在主程序中增加无条件结束指令。
2暂停指令
STOP,暂停指令,通过暂停指令可将⒏200CPU从RUN(运行)模式转换为STOP(暂停)模式,中止程序执行。如果在中断程序中执行ST(P(暂停)指令,中断程序立即终止,并忽略全部待执行的中断,继续扫描主程序的剩余部分。在当前扫描结束时,从RUN(运行)模式转换至ST(P(暂停)模式。
3监控定时器复位指令
WDR,监控定时器复位指令,指令重新触发叩⒓00CPU的系统监控定时器(WDT),扩展扫描允许使用的时间,而不会出现监控程序错误。WDR指令重新触发WDT,可以增加一次扫描时间。
为了保证系统可靠运行,PI£内部设置了系统监控定时器(WDT),用于监控扫描周期是否超时。当扫描到WDT时,WDT将复位。WDT有一设定值(100~300ms),系统正常工作时,所需扫描时间小于WDT的设定值,WDT及时复位。系统在发生故障的情况下,扫描时间大于WDT的设定值,该定时器不能及时复位,则报警并停止CPU运行,同时复位输出。这种故障称为WDT故障,以防止因系统故障或程序进入死循环而引起扫描周期过长。
系统正常工作时,有时会因为用户程序过长或使用中断指令或循环指令使扫描时间过长而超过WDT的设定值。为防止这种情况下WDT动作,可使用监控定时器复位指令(WDR),使WDT复位。
使用监控定时器复位指令时应当小心。如果使用循环指令阻止扫描完成或严重延迟扫描完成,下列程序只有在扫描循环完成后才能执行:通信(自由口模式除外);I/O更新(立即VO除外);强制更新;SM位更新(SM0、SM5~SM29除外);运行时间诊断程序;中断程序中的STOP指令;扫描时间超过25s,100ms和10ms定时器将不能正确计时。程序实例:如图544所示。