比如下面程序(想实现将一个值的上一次和上上一次值保存在M1.0和M1.1中,MW0作为一个计数器):
L MW0
L 1
==I
JC _001
_001: O M 2.0
O M 1.0
= M 1.0
L MW0
L 2
==I
JC _002
_002:O M 2.0
O M 1.1
= M 1.1
L 0
T MW0
像上面跳转程序_001和_002,这些程序段以什么为结束标志啊,
_001: O M 2.0
O M 1.0
= M 1.0
假如我只想让_001执行到给M1.0赋值完成之后就结束_001程序,那么应该怎么做?
然后如果一个跳转程序紧接着就是NOP 0,这是说明执行一个空操作,然后结束对应的跳转程序?那可不可以将NOP 0放在每个跳转程序的最后一行当做结束的标识?刚刚接触STL,问题比较菜,还请各位包涵。
最佳答案
像你写的程序段只是在运行到最后一句语句时才结束,中间的都是顺序执行,虽然有跳转语句,但因为你的标签放置的位置,可以说没起到跳转的作用。
如果你想结束_001程序,接在_001的最后一句加跳转语句直接调至程序结尾。
NOP 0就是一个空操作,并不是结束标志。
强烈建议你好好看一下S7-300 和S7-400 的语句表(STL)编程手册,楼上已经给出了地址。
提问者对于答案的评价:
谢谢!
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc236583.html