找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3059|回复: 11
打印 上一主题 下一主题
收起左侧

关于单片机多机通信的问题

[复制链接]
跳转到指定楼层
楼主
ID:201803 发表于 2017-5-26 17:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人最近在做一个设计,关于单片机一主多从的。现在已经实现了一个从机向一个主机发送数据,想以此为基础拓展到多个从机向主机发送数据,也就是不同各自独立的从机实时采集到信息(采集到的信息是数字),然后发送给主机,主机把这些信息综合处理(也就是把这些数字相加),然后把结果显示到lcd屏上,可以实现吗,有什么办法吗?谢谢各位大神的赐教

PS:主从机都是用的单片机
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:123289 发表于 2017-5-27 01:37 | 只看该作者
共用一条路,所以你规划好各从机的发送时间,不能出现同二个及以上子机同时向主机发信息事。
回复

使用道具 举报

板凳
ID:123289 发表于 2017-5-27 01:39 | 只看该作者
从机何时发信息呢?
方案1:
主机不叫不发。
方案2:
规定各从机的发送时间。
回复

使用道具 举报

地板
ID:151348 发表于 2017-5-27 10:31 | 只看该作者
自定义通信协议
回复

使用道具 举报

5#
ID:179958 发表于 2017-5-27 14:03 来自手机 | 只看该作者
使用IIC或RS485通信协议,可以的
回复

使用道具 举报

6#
ID:170346 发表于 2017-5-27 16:01 | 只看该作者
用modbus协议,主机轮询,以后扩展也非常方便
回复

使用道具 举报

7#
ID:201803 发表于 2017-5-27 18:14 | 只看该作者
yzwzfyz 发表于 2017-5-27 01:39
从机何时发信息呢?
方案1:
主机不叫不发。

好,谢谢老铁,我试试
回复

使用道具 举报

8#
ID:47286 发表于 2017-5-27 22:57 | 只看该作者
可以啊 不过你想反了吧 这么弄多麻烦 还要考虑2楼说的顺序

你干嘛不在主机里建一个从机列表 然后顺序呼叫从机 叫到谁谁就回馈数据 单位时间永远是一对一通讯 而且也不需要用9位多机通讯方式 在呼叫数据流加一位ID号就行了 每个从机都接收数据 然后对比ID位和自己ID相同就返回测量值否则不动作

这样也消耗不了多少时间啊 并不比你想的从机叫主机慢反而少很多麻烦
回复

使用道具 举报

9#
ID:201803 发表于 2017-6-1 13:25 | 只看该作者
dzbj 发表于 2017-5-27 22:57
可以啊 不过你想反了吧 这么弄多麻烦 还要考虑2楼说的顺序

你干嘛不在主机里建一个从机列表 然后顺序呼 ...

谢谢您的回答 我试一试
回复

使用道具 举报

10#
ID:164602 发表于 2017-6-1 15:01 | 只看该作者
单片机一对一通讯,是非常简单的,但一对多,就比较复杂了。
接线是简单的(所有从机RXD与主机TXD相连,所有从机TXD与主机RXD相连),关键在于:主机发送的数据,应该由哪一个从机来接收并执行。
所以,串口要以方式2或方式3工作。此时,SCON中的控制位SM2,就有了功能。传送的数据,就要包括一次地址内容(从机寻址),一次数据内容(从机执行用)。
应该先看看相关书籍,学习后,再实验。
回复

使用道具 举报

11#
ID:201803 发表于 2017-6-6 21:47 | 只看该作者
HC6800-ES-V2.0 发表于 2017-6-1 15:01
单片机一对一通讯,是非常简单的,但一对多,就比较复杂了。
接线是简单的(所有从机RXD与主机TXD相连,所 ...

谢谢您
回复

使用道具 举报

12#
ID:62223 发表于 2017-6-7 12:13 | 只看该作者
不要把多个TXD,RXD接在一起,会出现电压不匹配的现象,最好用数据收发器,485总线或者CAN总线之类的,每个节点定一个地址,在协议里面做判断,发给自己的数据再回应
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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