IIC总线仲裁

xunzhaohf0728 2014-08-29 03:35:51
IIC总线仲裁如果两个主机同时发送数据,仲裁失败的主机转为了从机状态,那他再仲裁过程中发送的几个BIT数据岂不是丢失了吗?这几个BIT数据有可能是地址码,有可能是数据位,我下次仍要发送,怎么处理这个问题呢?
现已不能在硬件上做改动,只能修改软件了,请问丢失的几个BIT数据可以用软件处理过来吗,大概如何实现呢?还是 IIC 会把竞争失败的总线的数据 自动保存在相应寄存器里,下次发送的时候,再发送之前发送的数据呢?
...全文
718 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dceacho 2014-10-20
  • 打赏
  • 举报
回复
如果这些主机都是你写的代码,建议你搞个时分复用系统, 开机后指定一个主机,广播一个时间间隔,然后一声开始,其余各分机只在自己的时间片里读写数据,比如说主机1在30-50MS内读写,主机2只在55-75MS内读写.....
dk104 2014-10-18
  • 打赏
  • 举报
回复
能不能简单一点?????
cissy_qian 2014-10-17
  • 打赏
  • 举报
回复
IIC 不会把竞争失败的总线的数据自动保存在相应寄存器,在失败后,可以发送反馈信号给失败主机,收到这个信号后重新发
of123 2014-09-10
  • 打赏
  • 举报
回复
下次重发就是了。
lbing7 2014-09-09
  • 打赏
  • 举报
回复
IIC搞多主机? 这个。。。 有必要搞得那么复杂么?多主机还必须用IIC?
mangoalx 2014-08-29
  • 打赏
  • 举报
回复
发送失败的主机已发送数据算失败,下次应该从头重新发送,所以没有丢失问题

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧