[485通信] 请教春阳老师485通讯问题,两帧数据之间总是有乱码存在导致通讯不稳定

[复制链接]
6505|12
 楼主| 电子学习员 发表于 2013-8-15 00:03 | 显示全部楼层 |阅读模式
春阳老师,有个问题分析了好长时间了一直解决不了,来二姨家找您给看看。主机轮训不同地址的从机,从机在中断中收到主机的数据帧,每两帧数据之间总是存在乱码,导致通讯不稳定。通过监听485总线发现这乱码并不是主机发过来的,应该是从机在使能或禁止485的时候出现的。从机处理和回送数据帧在主函数中,中断里开了一个buffer只负责收数据帧。两个数据帧之间的乱码导致从机丢失包,从而不能正确的回送、应答主机。硬件已经批量了,能否从软件方面来弥补这个问题呢?
ygl968 发表于 2013-8-15 15:11 | 显示全部楼层
lymum 发表于 2013-8-16 11:10 | 显示全部楼层
按主从通讯机制来说,从机默认是接收状态,在没有收到主机发送的数据时,是不会有响应的,同样的总线上也不会有数据电平;
硬件没问题,再排除干扰问题,应该就是固件通讯部分设计问题。
chunyang 发表于 2013-8-16 22:29 | 显示全部楼层
如果总线电平存在不受控态就会因干扰而出现乱码,这时可加总线偏置来解决,即用电阻将总线静态电平偏置到逻辑1。
航天风云 发表于 2013-8-19 16:23 | 显示全部楼层
要查看一下你线路上跑的数据是否正确,还有时序的问题,可以用“RS485串口数据采集及分析器”在电脑上查看,一下就明白问题出在那了。
LX156 发表于 2013-8-26 10:45 | 显示全部楼层
chunyang 发表于 2013-8-16 22:29
如果总线电平存在不受控态就会因干扰而出现乱码,这时可加总线偏置来解决,即用电阻将总线静态电平偏置到逻 ...

春阳老师您好:
      我这两天在调485程序,比如说我发x,接收却成了y,我现在很确定是硬件的问题,因为我自己焊了个简易的电路,发现接收正常,不知道出现这种问题,一般是电路哪个环节?(485带光耦隔离的)
航天风云 发表于 2013-8-26 18:51 | 显示全部楼层
‘RS485串口数据采集及分析器’这个是专门针对硬件问题的,是数据发送不对,还是接收不对,用这工具在电脑上一下就能看明白,没有任何歧义。这个工具在淘宝上有的卖,我们一直在用,真的很好,很方便、一目了然。
chunyang 发表于 2013-8-26 21:26 | 显示全部楼层
LX156 发表于 2013-8-26 10:45
春阳老师您好:
      我这两天在调485程序,比如说我发x,接收却成了y,我现在很确定是硬件的问题,因为 ...

电路或元件参数有问题,贴出图来。
Richard-wang 发表于 2013-8-28 15:35 | 显示全部楼层
关注原因过程结果
chenluck 发表于 2013-8-29 11:46 | 显示全部楼层
LX156 :有没有可能AB线接反了
楼主:有可能是从机在进行接收与发送转换时,软件的控制时序上有问题,转换为发送状态之前必须将TXD的变为高,才可以转换为发送的,并且从机在不需要发送时,一定不能出现转换为发送状态的情况
LX156 发表于 2013-10-14 14:34 | 显示全部楼层
chunyang 发表于 2013-8-26 21:26
电路或元件参数有问题,贴出图来。

谢谢您,我的问题找到了,是9012的用成9013了,
LX156 发表于 2013-10-14 14:37 | 显示全部楼层
chenluck 发表于 2013-8-29 11:46
LX156 :有没有可能AB线接反了
楼主:有可能是从机在进行接收与发送转换时,软件的控制时序上有问题,转换为发 ...

非常感谢您的回答,我之前是考虑过是否是AB接反了,换了之后发现没有,再调调调发现时器件用错了,9012里面混了9013,所以才出现这个情况,谢谢您!
maxking 发表于 2013-10-24 16:53 | 显示全部楼层
楼主能否贴个线路图上来?我也想做这个了。参考下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

150

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部