回复:PLC与2个智能模块通讯的问题

四书五经

  • 帖子

    762
  • 精华

    58
  • 被关注

    30

论坛等级:侠圣

注册时间:2005-12-23

普通 普通 如何晋级?

发布于 2009-10-12 16:24:41

0楼

看了你的程序,首先RS485是总线,这就导致你发的信号,所有的变送器都能收到。只不过在变送器的程序里做了判断,只有满足变送器的格式的信息,它才会进行处理和应答。至于在CPU上你必须也要去进行判断,在CPU上处理必须是轮询,必须要保证在总线上同时只有一个站在发送/接收信息,RS485是半双工的,不能同时收发。
所以你的程序应该是第一站发送完后,用DONE去触发接收(这样收到的信息,就是肯定是第一个变送器的信息),用接收的NDR去触发下一个发送,用发送的DONE去触发下一个接收。如此循环。
你的程序在发送和接收之间,没有等待,应该用DONE去触发接收。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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