回复:自建的两个库文件相互干扰问题,请大侠帮忙

芳季

西门子1847工业学习平台

  • 帖子

    15507
  • 精华

    101
  • 被关注

    961

论坛等级:至圣

注册时间:2007-08-03

钻石 钻石 如何晋级?

发布于 2015-01-10 19:43:42

4楼

当一个子程序里面有一下类似的逻辑的时候。
LN SM0.0
R L0.0 1
就是说一个off的逻辑去复位一个东西。
那么你假设一下,执行这个子程序之前和之后这个L是多少?
当这个L是in/out参数的话进入子程序时自然会带入值。退出子程序的时候自然等于带入值。
当这个L是out参数的时候进入子程序,这个时候并不会有确定值,因为out参数是不赋值的。这样,经过子程序的执行,你知道off逻辑的R指令不会改变L的状态,退出子程序的时候会输出一个不确定的值了。而这个不确定值就是上一次使用这个L0.0的其他子程序遗留下来的。
说到这里,你看看你自己有没有这样的程序逻辑?
还有S指令一模一样的原理。mov指令跟这个R也是相同的现象,任何和mov指令一样执行的指令都有这样的现象。例如位移指令,逻辑指令,四则运算等等。那么就是说绝大部分了。凡是off逻辑不改变对象的指令,都会这样。(很明显,线圈输出指令和计时器不具有这个特性)
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33258条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。