签到有奖
消息提醒
西门子商城
点击复制链接
关注该帖后,有多人参加探讨会对您通知与提示!
帖子
精华
被关注
论坛等级:新手
注册时间:2014-05-12
普通 如何晋级?
发布于 2016-07-22 11:18:58
5楼
时序出错了,建议用接收字符中断来把控每个接收到的字符的内容以及每次接收总个数。
引用3楼详细内容:
谢谢回复, 从机回复的指令长度是一致的,都是9位, 只是其中的状态位会根据是否有报警显示不同的数值。Port1口的接收缓冲区根据smb194 来判断。
不对效验码进行验证
有趣的是 设备对于A错误 和B错误是同样回复 01 65 09 0B 00 00 01 xx xx (最后两位相同的效验位)
通过串口调试工具发现 回复A错误时 设备回复以上指令会有0.5s的延时,
而回复B错误时,几乎没有延时,当PLC向设备发出指令后,串口调试工具立刻就收到了回复
这就是我怀疑当SM187.7 还未来的及切换时 其实B错误的回复就已经发出了。
引用2楼详细内容:
Port1的接收缓冲区如何判断本次接收已正确完成,以及如何较验收到的数据(有固定长度吗?正确和报警时的长度一致吗?从机发的校验码和主机算出来的一致吗?)。
恩, 谢谢。 我也的确使用过25号
Port 1 Receive character中断和smb2, 发现可以收到第一个01, 但是我又如何接收接下来的数据呢?
请填写推广理由:
玩赚618|学问聊抽大奖,会员买一赠一
助你技有所长,论有所获
首次发帖探讨工控技术话题 立获新人礼包,100中奖哦! (包含周边、书籍、兑奖西币)
共有9438条技术帖
恭喜,你发布的帖子
快扫描右侧二维码晒一晒吧!
再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!
分享
只看 楼主
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!