西门子S7-200PLC的子程序的执行问题。

西门子S7-200PLC的子程序的执行问题。西门子S7-200PLC的子程序执行到一半就不给能流了,那么该子程序会继续执行直到该子程序结束?还是一旦没有能流输入子程序,子程序就马上停止执行,回到主程序继续执行下一步?

能够中断子程序完成执行的方法只能是plc从run转向stop,例如,停电了。

否则,一定是主程序调用子程序,子程序调用完成,继续执行主程序,即使调用过程中发生中断,也是停止子程序,调用中断程序,执行完中断程序,继续子程序,然后主程序这样一个过程。追问

就是主程序里面,子程序执行中途输入失去能流,子程序也会继续执行,直到该子程序执行完成,再进行主程序下一条,是这样子吗

追答

子程序执行中,系统不会去检测是否失去能流,因为主程序的执行参数被压入系统堆栈,只有当子程序执行完毕后,才会将参数弹出堆栈,因此,不存在子程序调用过程中失去能流的可能。

追问

那我调用子程序,怎么让子程序中途跳出执行

追答

在子程序中使用跳转指令,迅速跳转到子程序结尾。

温馨提示:答案为网友推荐,仅供参考
相似回答