RS485主从式多机(单片机)通信,从机的地址是怎么确定或定义的?

如题所述

从机的地址是遵循协议,根据协议定义的。

RS485主从式多机通讯协议的数据传输协议:此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息按本协议发出。

扩展资料

主从式多机通讯协议的错误检测方法:

1、超时检测

用户要给主设备配置-预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作为正常反应。如果从设备检测到一传输错误,消息将不会接收,也不会向主设备作出回应。这样超时事件将触发主设备来处理错误。发往不存在的从设备的地址也会产生超时。

2、CRC检测

CRC域是一个字节,检测了整个消息的内容。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误,从设备对本消息不作回应。

通讯网络只设有一个主机,所有通信都由他发起。网络可支持254个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-01-17

RS485主从式多机(单片机)通信,从机的地址是:

    从机地址是随意分配只要不重合就可以了;

    可以拨码开关也可以程序里固化,很简单。



    一般是由编程者自己来确定地址,或者通过硬件来设置,硬件地址设置通过电路板上的拨码开关来选择,例如下面这个图,有两个拨码开关,两位就00、01、10、11四个地址,依次类推,摄像监控云台控制里就是通过这种办法来设置的从机地址(一般是485通信)

第2个回答  2011-10-16
这个需要你自己来定。一般情况都是在板子上加一个拨码开关,通过硬件在使用前来进行选择,但同一总线上的一定不能选成一样的。在程序中加电后就要读这个拨码开关来确定本机地址。追问

能说的再详细一点吗?我的系统是1个DSP和16个单片机通信?

追答

16个从机那就用个四位拨码开关。就是那种红色的小拨码。四位可以组成16种状态。从0000-1111
一端接地,一端接单片机I/O,比如接P1.0-P1.4.
程序中判断就和读键盘一样的。

本回答被网友采纳
第3个回答  2011-10-20
从机地址是随意分配只要不重合就可以了,可以拨码开关也可以程序里固化,很简单。本回答被提问者采纳
第4个回答  2012-04-17
这个你解决了没?我也遇到类似问题,求解??QQ737722525
相似回答