OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10146|回复: 15

1个上位机,控制40个下位机,串口可行吗?

[复制链接]

13

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2021-12-17
在线时间
23 小时
发表于 2022-12-7 19:44:05 | 显示全部楼层 |阅读模式
10金钱
各位大神,小弟想做一个,1个上位机,控制40个下位机的机器。给40个下位机发命令,比如发1234就是12号下位机执行34号动作。通信方式好像还有IIC和SPI,我用串口通信可行不?我还需要注意点啥?



未标题-1副本.png

最佳答案

查看完整内容[请看2#楼]

那就整个RS-485(注意选择合适的节点驱动芯片),协议用上modbus,理论上连接40个,是没有问题的。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

103

帖子

0

精华

高级会员

Rank: 4

积分
632
金钱
632
注册时间
2016-3-30
在线时间
67 小时
发表于 2022-12-7 19:44:06 | 显示全部楼层
那就整个RS-485(注意选择合适的节点驱动芯片),协议用上modbus,理论上连接40个,是没有问题的。
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-12-8 10:08:30 | 显示全部楼层
串口可行,从机的TXD最好设置成开漏模式,主机RXD加一个上拉电阻。
从机TXD若是推挽输出则不可并联在一起,可以在发数据时设置成推挽,发完后置为浮空。
GND都得接上,这应该不用说吧。
专治疑难杂症
回复

使用道具 举报

1

主题

48

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2018-8-16
在线时间
68 小时
发表于 2022-12-8 10:47:42 | 显示全部楼层
数据量和速度要求高 就用CAN (不分主从),数据量速度没要求485(主从)。
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2676
金钱
2676
注册时间
2018-11-8
在线时间
431 小时
发表于 2022-12-8 11:09:42 | 显示全部楼层
串口485可行 IIC感觉也可以和485原理都差不多
SPI太麻烦了吧 主要是片选这里需要额外加芯片解决 要不就得浪费主机40个IO口 这接线也是个大工程
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2022-12-8 11:39:23 | 显示全部楼层
比较成熟的就是485或是CAN
回复

使用道具 举报

0

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
347
金钱
347
注册时间
2020-5-26
在线时间
84 小时
发表于 2022-12-8 12:53:25 | 显示全部楼层
IIC和SPI建议不要考虑了,设计的目的就不是长距离传输用的
回复

使用道具 举报

70

主题

6698

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12692
金钱
12692
注册时间
2012-11-26
在线时间
3711 小时
发表于 2022-12-8 13:27:10 | 显示全部楼层
支持上面那哥们讲的   RS485或者CAN 比较适合这个场景
学无止境
回复

使用道具 举报

13

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2021-12-17
在线时间
23 小时
 楼主| 发表于 2022-12-13 16:02:22 | 显示全部楼层
LcwSwust 发表于 2022-12-8 10:08
串口可行,从机的TXD最好设置成开漏模式,主机RXD加一个上拉电阻。
从机TXD若是推挽输出则不可并联在一起 ...

请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从机同时都发信号,那主机就错乱了吧···有什么方法解决吗,是不是IIC的总线仲裁功能比较好。
回复

使用道具 举报

13

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2021-12-17
在线时间
23 小时
 楼主| 发表于 2022-12-13 16:05:06 | 显示全部楼层
高级放牛娃 发表于 2022-12-7 19:44
那就整个RS-485(注意选择合适的节点驱动芯片),协议用上modbus,理论上连接40个,是没有问题的。

请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从机同时都发信号,那主机就错乱了吧···有什么方法解决吗,是不是IIC的总线仲裁功能比较好。
回复

使用道具 举报

13

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2021-12-17
在线时间
23 小时
 楼主| 发表于 2022-12-13 16:06:12 | 显示全部楼层
jermy_z 发表于 2022-12-8 13:27
支持上面那哥们讲的   RS485或者CAN 比较适合这个场景

请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从机同时都发信号,那主机就错乱了吧···有什么方法解决吗,是不是IIC的总线仲裁功能比较好。
回复

使用道具 举报

0

主题

103

帖子

0

精华

高级会员

Rank: 4

积分
632
金钱
632
注册时间
2016-3-30
在线时间
67 小时
发表于 2022-12-13 21:00:48 | 显示全部楼层
1179801335 发表于 2022-12-13 16:05
请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从 ...

既然是选择了modbus,那么就是有主从的概念了。modbus都是由主机发送查询的。如果你想提高反应速度,可以将查询的时间间隔短一些。
当然你用IIC也可以,只要能够解决通讯距离的问题。
回复

使用道具 举报

70

主题

6698

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12692
金钱
12692
注册时间
2012-11-26
在线时间
3711 小时
发表于 2022-12-14 08:02:56 | 显示全部楼层
1179801335 发表于 2022-12-13 16:06
请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从 ...

那你还是用CAN吧
学无止境
回复

使用道具 举报

10

主题

3281

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8206
金钱
8206
注册时间
2020-5-11
在线时间
3700 小时
发表于 2022-12-19 09:16:48 | 显示全部楼层
1179801335 发表于 2022-12-13 16:02
请教一下大佬。突然想起来了,由于从机有传感器接收外界信号,所以从机会不定时向主机发信息,如果两个从 ...

IIC有仲裁吗?我不清楚,只知道CAN有仲裁。
这个问题,更改下位机程序不就好了?
专治疑难杂症
回复

使用道具 举报

233

主题

957

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2011-10-9
在线时间
222 小时
发表于 2022-12-22 09:33:06 | 显示全部楼层
为何不用网络 简单容易
回复

使用道具 举报

21

主题

70

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
364
金钱
364
注册时间
2016-8-23
在线时间
71 小时
发表于 2022-12-23 16:15:23 | 显示全部楼层
为什么不考虑网络通信?加个交换机  简单可靠   
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 18:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表