打印
[AVR单片机]

跪求485通讯问题总线接30台可正常通讯.接31台就无法通讯了

[复制链接]
2224|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sxqwszh|  楼主 | 2012-8-23 22:48 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
ATMEGA64A单片机做了一款检测板.(检测板上有两路485通讯)检测板与一台终端通过485连接..
比如终端寻址(前提已经找到检测板的地址).上位机发送一条指令给检测板.检测板再发送给终端,终端收到指令后返回一条指示给检测板,再由检测板发通过458发送给上位机.
每个检测板接线距离是15厘米.
问题是485总线上连接30台检测板通讯正常..连接到31台时上位机收不到返回的指令.用串口工具检测终端,发现终端已返回指令给检测板,但检测板未返回给上位机.
31台检测板时虽然没有返回指令给上位机,但上位机发送的指令终端都有收到并可以执行就是返回的指令上位机收不到.跪求高人指点.

相关帖子

沙发
sxqwszh|  楼主 | 2012-8-23 22:52 | 只看该作者
贴485原理图.高手看看有没有问题

使用特权

评论回复
板凳
sxqwszh|  楼主 | 2012-8-23 22:54 | 只看该作者
我用的ATMEGA64A.原理图

使用特权

评论回复
地板
pa2792| | 2012-8-23 22:59 | 只看该作者
RS485终端阻抗匹配问题,于你的板子没有多大的关系。

使用特权

评论回复
5
sxqwszh|  楼主 | 2012-8-23 23:12 | 只看该作者
总线两端各加了120Ω的匹配电阻,还是没只能接30台.接再多就不通讯了.
有一点一直搞不明白,终端可以收到指令并执行,返回数据给检测板,而检测板不能返回数据给上位机.

使用特权

评论回复
6
sxqwszh|  楼主 | 2012-8-23 23:16 | 只看该作者
sp485r 总线距离在300米以内是可以不拉匹配电阻的呀.我每个检测板间的距离只有15厘米. 连接30块总线距离才5米左右呀.

使用特权

评论回复
7
airwill| | 2012-8-24 13:02 | 只看该作者
会不会是软件问题呢? 数据包 ID 的冲突?

使用特权

评论回复
8
pa2792| | 2012-8-24 14:47 | 只看该作者
那就可能是你通讯协议中的ID数量限制问题,看看是否定义错误。

使用特权

评论回复
9
efen| | 2012-8-24 17:49 | 只看该作者
那个R14、R13是不是太大了

使用特权

评论回复
10
qq65411253| | 2012-8-24 20:02 | 只看该作者
R13、R14确实有点大,一般用自恢复保险丝就可以了。不必刻意使用电阻。
另外,加匹配电阻是跟具体的信号波形密切相关的。如果信号反射严重,无论距离如何都是要加匹配电阻的。所谓的反射,基本上就是A、B之间的电容充放电了。找个示波器看一下波形,只要边沿够陡、跟发送端信号相位相差不大就可以了。
我感觉软件上的问题可能性更大。

使用特权

评论回复
11
mtraveler| | 2012-9-28 22:58 | 只看该作者
学习了

使用特权

评论回复
12
yekang_lucky| | 2012-9-28 23:52 | 只看该作者
上下拉电阻改为47K以上,限流电阻改为20欧左右,最好选用487芯片,这个芯片的共模电阻比较大

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

5

帖子

0

粉丝