回复:S7-1214C通过模块扩展CM1241(RS422/485)实现Modbus rtu通讯

已锁定

WWCWWC

西门子1847工业学习平台

  • 帖子

    9111
  • 精华

    157
  • 被关注

    1473

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

发布于 2020-08-19 17:34:31

29楼

展开查看
以下是引用Chen_TS在2020-08-19 17:10:45的发言 >

没看懂你这个地方,既然你的M2.4是故障位,有故障=1;没故障=0;那么你和M2.2能做或运算吗?假如我的初始化完成了,MB6=1(M2.0=TRUE)M2.2=0;M2.4=1,你的这条指令就有问题了,后面的指令依旧被执行了。因此这个地方应该是MB6,M2.2,M2.4的反,三者做&运算才对。

M2.2 = 通讯指令完成标志位;M2.4 = 通讯指令执行中的错误位。

当通讯指令完成或者错误时,均下移到下一个指令,这个并没有问题的。

如果仅仅只是M2.2指令完成标记位作为执行下一个指令的条件,那么,当通讯错误时,轮询将被停止,这个控制方法是不可取的。

至于MB6在这里仅仅只是描述通讯指令跳转的标记条件,MB6完全是受done位和error控制的,加这个没有实际意义。


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15107条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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