pc串口跟多个单片机连接 只要求从单片机能接受数据即可

pc串口和多个单片机连接 只要求从单片机能接受数据即可
{{{各位大虾,我现在想用一个51单片机做主机,很多51单片机做从机,将从机的TX和RX串联起来做成一个串口总线,连接在主机的串口引脚上,不知道一个主机能带多少从机(越多越好,需求大概是50个上下)}}}


  以上是上一个贴子的  我是这样考虑的   一个电脑串口 连接多个单片机    单片机之间不需要通信   而且单片机只要求能接受数据就好    考虑到两种方式  一种直接像上个帖子那样 不用任何协议  pc发送时候每个单片机都接受   另一种可以用iic方式实现  但是带iic单片机不知道选择那一款合适    请高手指点下 我的这两种方案可行性???  还有更好的方案吗??



            
------解决思路----------------------
从机需要设地址吗?还是广播就可以?
I2C是有地址的,会省点事。单片机不用驱动芯片,但如距离长负载多恐怕不行
232的话主机只把Tx接从机Rx,虽然有驱动,但距离和多负载能力也够呛
比较好是485。差分传输,通讯距离远,选1/8unit 的片子可以带最多255个负载。PC端用一个usb-485转换器。只是从机需要地址的话要自己编程实现了
------解决思路----------------------
广播方式就行   定个简单的协议   分配ID
------解决思路----------------------
I2C的话, 接收完一条命令后, 要隔比较长的时间才能接收下一条命令。
------解决思路----------------------
可以使用RS485通讯的方式
------解决思路----------------------
引用:
Quote: 引用:

从机需要设地址吗?还是广播就可以?
I2C是有地址的,会省点事。单片机不用驱动芯片,但如距离长负载多恐怕不行
232的话主机只把Tx接从机Rx,虽然有驱动,但距离和多负载能力也够呛
比较好是485。差分传输,通讯距离远,选1/8unit 的片子可以带最多255个负载。PC端用一个usb-485转换器。只是从机需要地址的话要自己编程实现了

谢谢你的详细答复  我刚接触不是很懂  请问什么是广播 ??我是这样想的  从机我每个里面都写一个循环 类如  第一个a=SBF if a=1  。。。。第二个a=SBF ifa =2。。。。。   这样可以吗??????你说的从机有地址  怎样设置啊??或者说用什么协议  

广播就是不区分从机地址,命令总是发给所有从机的
从机地址可以参考modbus协议,照抄或自己定一个都行
如果从机要回复那不能用232,I2C 和 485 可以。因为是轮询方式,可以用双线485就可以