打印

请教!485通讯如何实现自动分配地址?

[复制链接]
8086|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wendx|  楼主 | 2011-12-20 19:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
485通讯主线中,若指定1个主机+N个从机。

     据了解,目前成熟的方法都是增加地址拨码或软件固化地址,
但都存在地址重复的可能。

     请问大侠,有没有一种不采用上面方法而实现N个从机的地址自动分配?

相关帖子

沙发
chunyang| | 2011-12-20 20:32 | 只看该作者
这个没有简单的方法,可以使用唯一系统ID然后根据该ID采用延时算法向主机申请,这个软件的容错算法是很讲究工艺的。

使用特权

评论回复
板凳
wendx|  楼主 | 2011-12-28 13:40 | 只看该作者
请问2楼,
1、如何产生唯一系统ID?
2、如何避免总线中两个从机同时占有总线?

使用特权

评论回复
地板
rebewn| | 2011-12-28 13:43 | 只看该作者
等高手

使用特权

评论回复
5
VIP4会员| | 2011-12-28 13:54 | 只看该作者
买个唯一序列号IC,根据这个IC计算地址

使用特权

评论回复
6
kami03372| | 2011-12-28 16:26 | 只看该作者
从机如果有主动发送的权利,肯定会存在两个从机同时占用总线的状况出现的。
如果是自己的系统用,可以在加一条线,准备占用总线的时候查询这个状态线,然后在准备。
另一种方法就是,所有的通信必须是由主机发起,从机收到自己对应的命令才操作。

使用特权

评论回复
7
wendx|  楼主 | 2012-1-5 09:13 | 只看该作者
请问5楼
唯一序列号IC?
这是什么东西.

使用特权

评论回复
8
大道至简| | 2012-1-5 13:34 | 只看该作者
use ethernet

使用特权

评论回复
9
SmartEnergy| | 2012-1-5 14:50 | 只看该作者
参考一下Maxim的单总线,做一个类似的,估计可以,它的思路是
1. 设备之间靠什么来区分?
2. 有了区分之后,自动编址怎么来安排?

使用特权

评论回复
10
兰天白云| | 2012-1-5 16:10 | 只看该作者
这个没有简单的方法,可以使用唯一系统ID然后根据该ID采用延时算法向主机申请,这个软件的容错算法是很讲究工艺的。
chunyang 发表于 2011-12-20 20:32


请问这个延时算法是这么算的?
我们目前已实现自动编制,但采用的方式我自己都怕怕的

使用特权

评论回复
11
mengjicheng| | 2012-11-18 21:19 | 只看该作者
每个IC出厂时都有序号的,但我不明白主机第一次联机后怎么知道从机的这些ID值,我假设是有二个从机,1号机的ID码为65535,2号机的ID码为8888,是不是主机从0地址开始发送,检测有谁对上当前发的地址号,当有应答的就是1号机(地址为8888,),继续搜索直到找到第二个地址为655535的机,记下当前的地址到主机的EEPROM中,当作第二号机,不知你们是这样做的吗,这样做的话那不是要搜索很长的时间

使用特权

评论回复
12
mengjicheng| | 2012-11-18 21:24 | 只看该作者
忘了,还可能通过按键来对码,当主按下某个键时,同时发送一个命令给所有从机处于对码功能,当按下从机的对码键时,上传自身的ID码作为自己的的地址码,这时主机收到后,存下止地址,这样就找到了一个从机的地址码,不知你们是怎样做的,多发表一下意见让我学学

使用特权

评论回复
13
dqyubsh| | 2012-11-18 21:48 | 只看该作者
个人觉得还是现场拨码比较靠谱,假如哪台设备坏了,总不能让维护人员更换设备的时候现场更新软件,也不能让其它设备停下来等着大家对码。剩下来的就是怎样维护设备的地址,使其唯一恒定,这大概要在管理手段上想辙,比如如何维护数据库、做好维修记录、提高责任心。

使用特权

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

本版积分规则

0

主题

8

帖子

1

粉丝