OpenEdv-开源电子网

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

用STM32F407实现1主6从RS232/RS485通信

[复制链接]

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-9-12
在线时间
17 小时
发表于 2016-9-20 11:01:07 | 显示全部楼层 |阅读模式
2金钱
目前有个项目1个主控板和6个采集板的cpu都是STM32F407,现在想主控板通过RS232或RS485与6个采集板通信,请问有经验的朋友以下哪个方案好?方案一:主控板设计6个RS232/RS485接口分别接到6个采集板上通信。
方案二:主控板设计1个RS232/RS485接口与6个采集板通信。
另,串口采用RS232好还是RS485好(传输距离不超过5米)?

最佳答案

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

建议用RS485,然后用modbus协议
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

70

主题

6758

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12999
金钱
12999
注册时间
2012-11-26
在线时间
3791 小时
发表于 2016-9-20 11:01:08 | 显示全部楼层
建议用RS485,然后用modbus协议
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
发表于 2016-9-20 11:08:18 | 显示全部楼层
6个采集板,你确定你的板子有那么多接口?还是用485吧~
回复

使用道具 举报

28

主题

288

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1212
金钱
1212
注册时间
2011-4-9
在线时间
97 小时
发表于 2016-9-20 11:34:51 | 显示全部楼层
采用485吧,轮训6个地址即可
回复

使用道具 举报

3

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
222
金钱
222
注册时间
2015-12-18
在线时间
34 小时
发表于 2016-9-20 11:44:24 | 显示全部楼层
485好,万一距离需要扩展也没问题。数据交叉不多,也可以6个从机接到一路485,节约串口。
回复

使用道具 举报

11

主题

216

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1124
金钱
1124
注册时间
2015-2-27
在线时间
485 小时
发表于 2016-9-20 12:51:39 | 显示全部楼层
6个232口光中断就整死你了,特别是如果数据不定长的,要加定时器判断一帧数据是否接收完成。
如果用DMA加空闲中断接收,几个串口同时来数据就意味着数据要丢失,
回复

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-9-12
在线时间
17 小时
 楼主| 发表于 2016-9-20 13:49:26 | 显示全部楼层
jermy_z 发表于 2016-9-20 11:15
建议用RS485,然后用modbus协议

OK,RS485.主控板上用一个RS485接6块采集板上的RS485?采用轮询?
回复

使用道具 举报

70

主题

6758

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12999
金钱
12999
注册时间
2012-11-26
在线时间
3791 小时
发表于 2016-9-20 13:52:10 | 显示全部楼层
xpeng0427 发表于 2016-9-20 13:49
OK,RS485.主控板上用一个RS485接6块采集板上的RS485?采用轮询?

是的
学无止境
回复

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-9-12
在线时间
17 小时
 楼主| 发表于 2016-9-20 14:17:45 | 显示全部楼层

一分六路硬件连接怎么实现啊?市场上有这种线卖吗(网上没找到)?还是说要自己做线,把六路相同的定义线接一起?
回复

使用道具 举报

4

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
66
金钱
66
注册时间
2016-9-12
在线时间
17 小时
 楼主| 发表于 2016-9-20 15:20:58 | 显示全部楼层
山峰雪狼 发表于 2016-9-20 11:34
采用485吧,轮训6个地址即可

是要用modbus协议吧。另,请教下一分六的485线怎么接?
回复

使用道具 举报

28

主题

288

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1212
金钱
1212
注册时间
2011-4-9
在线时间
97 小时
发表于 2016-9-20 19:08:43 | 显示全部楼层
xpeng0427 发表于 2016-9-20 15:20
是要用modbus协议吧。另,请教下一分六的485线怎么接?

六个设备都挂在总线上即可
回复

使用道具 举报

70

主题

6758

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12999
金钱
12999
注册时间
2012-11-26
在线时间
3791 小时
发表于 2016-9-20 21:19:31 | 显示全部楼层
xpeng0427 发表于 2016-9-20 14:17
一分六路硬件连接怎么实现啊?市场上有这种线卖吗(网上没找到)?还是说要自己做线,把六路相同的定义线 ...

可以百度下RS485总线接法   

其实主要就是TTL转485出来   A 跟A在一条线  B跟B在一条线,前后端加120欧姆匹配电阻

线材,导线即可
学无止境
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-28 17:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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