打印

一路485如何实现与两MCU不同时通讯,求方法各位大神。

[复制链接]
2088|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
songchenping| | 2016-11-8 11:22 | 只看该作者
互锁开关,楼主见过吗

使用特权

评论回复
板凳
icecut| | 2016-11-8 12:09 | 只看该作者
485本来就是不能同时通信. 你协议里有地址,是谁的地址谁应答

使用特权

评论回复
地板
驽马拉笨车| | 2016-11-8 12:38 | 只看该作者
主从模式轮询只能一个个通讯

使用特权

评论回复
5
微笑人生|  楼主 | 2016-11-8 13:14 | 只看该作者
icecut 发表于 2016-11-8 12:09
485本来就是不能同时通信. 你协议里有地址,是谁的地址谁应答

我的意思是需要和两个MCU通讯,但是同一时间只能和一个通讯,是这样的,

使用特权

评论回复
6
mini1986| | 2016-11-8 13:23 | 只看该作者
本来就是半双工,你有一个master就行了,两个mcu作为slave,没啥问题......

使用特权

评论回复
7
icecut| | 2016-11-8 14:10 | 只看该作者
微笑人生 发表于 2016-11-8 13:14
我的意思是需要和两个MCU通讯,但是同一时间只能和一个通讯,是这样的, ...

对啊.串行总线总要排队通信.你不想排队就多拉几条线

使用特权

评论回复
8
wsnsyy| | 2016-11-8 14:50 | 只看该作者
一主多从结构

使用特权

评论回复
9
微笑人生|  楼主 | 2016-11-8 15:18 | 只看该作者
icecut 发表于 2016-11-8 14:10
对啊.串行总线总要排队通信.你不想排队就多拉几条线

那我485这边发命令时我如何让他判断我是需要通讯MCUA还是MCUB呢

使用特权

评论回复
10
icecut| | 2016-11-8 15:26 | 只看该作者
微笑人生 发表于 2016-11-8 15:18
那我485这边发命令时我如何让他判断我是需要通讯MCUA还是MCUB呢

....如果你不懂就看看 modbus 是怎么实现的吧...如果再不懂,就点我签名的课程,该去充电了...

使用特权

评论回复
11
微笑人生|  楼主 | 2016-11-8 16:12 | 只看该作者
mini1986 发表于 2016-11-8 13:23
本来就是半双工,你有一个master就行了,两个mcu作为slave,没啥问题......

不要说这么专业啊,新手不太懂的,能不能解释一下

使用特权

评论回复
12
mini1986| | 2016-11-8 16:29 | 只看该作者
微笑人生 发表于 2016-11-8 16:12
不要说这么专业啊,新手不太懂的,能不能解释一下

这已经是很不专业了,想用485这是最基本的知识......

使用特权

评论回复
13
用户更新中---| | 2016-11-8 19:35 | 只看该作者
C:\Users\kfb-lan\Desktop\拨码开关设地址.jpg
楼主,可以通过设置固定硬件硬件地址,然后用软件来轮询,思路就是这样,想象看。

使用特权

评论回复
14
用户更新中---| | 2016-11-8 19:37 | 只看该作者
不好意思哈,第一次上传图片,还不熟练。参考图片如图

拨码开关设地址.jpg (56.45 KB )

参考地址

参考地址

使用特权

评论回复
15
icecut| | 2016-11-8 22:57 | 只看该作者
比如从机接收到数据,第一个从机判断第二字节是不是1,第二个从机判断第二个字节是不是2,如果 true 就回复,如果 false 就扔掉.
我觉得学习串口协议就应该学这些了

使用特权

评论回复
16
xyz549040622| | 2016-11-9 00:01 | 只看该作者
只要是共用总线,总线上肯定是随时有数据的,虽然是一路485信号,但是可以用2个485芯片,输出端接在一起,输入端分别接两个mcu。因为485是有使能端的。

或者可以用继电器或者其他器件切换两路信号也成。

使用特权

评论回复
17
penguin008| | 2016-11-9 08:52 | 只看该作者
微笑人生 发表于 2016-11-8 13:14
我的意思是需要和两个MCU通讯,但是同一时间只能和一个通讯,是这样的, ...

靠软件协议来解决,发送的数据包里面带上终端地址,是MCUA则A通讯,是MCUB则B通讯

使用特权

评论回复
18
numenjian| | 2016-11-9 09:51 | 只看该作者
定好数据协议就行,485不都是这么用的么?

使用特权

评论回复
19
pang3dsa| | 2016-11-9 10:36 | 只看该作者
定个协议,带个地址,主机轮询。MCUA,MCUB设不同地址,每个MCU只响应自己地址的询问就可以了

使用特权

评论回复
20
handlike| | 2016-11-9 11:32 | 只看该作者
楼主这个问题是个硬件问题--------总线竞争。如果是单位位项目可以找我帮你解决有现成的产品,这几年客户用的少了,一直在家里放着。

使用特权

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

本版积分规则

9

主题

59

帖子

1

粉丝