S7-200子程序

子程序是怎么理解的?如果有下例程序:LD SM0.0
 CALL SBR0
 其理解是不是PLC每个扫描周期都要执行一次子程序?子程序的执行是不是每个周期只执行一次,执行完一次子程序后回到主程序,从主程序往下执行?
 我想把手动程序放到SBR0
 自动放到SBR1M0.0是切换位
 LD M0.0
 CALL SBR0
 LDI M0.0
 CALL SBR1
 然后在把手动和自动给程序写在各子程序里这样做可以吗?
 

问题补充:
在子程序结束时要加结束指令码

最佳答案

LD SM0.0 
 CALL SBR0//它的意思是说,PLC每个周期都要调用一次;
 子程序被调用之后,一旦执行完了就返回主程序;
 你的想法是可以的;
 这样做有一个弊端:就是子程序不能使用跳转语句跳入、跳出,还有当执行完子程序时,它的累加器也不会保存数据
 或者,你也可以考虑一下用跳转指令来实现手/自动~~

提问者对于答案的评价:
谢谢

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc350970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午12:37
下一篇 2021年7月5日 上午12:37

相关推荐

发表回复

登录后才能评论