[发明专利]多主多从的I2C通信方法、系统及节点设备有效
申请号: | 201810563128.7 | 申请日: | 2018-06-04 |
公开(公告)号: | CN108920401B | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 廖巍巍;宋政斌 | 申请(专利权)人: | 深圳柴火创客教育服务有限公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42;G06F13/10 |
代理公司: | 深圳市瑞方达知识产权事务所(普通合伙) 44314 | 代理人: | 高瑞;杨波 |
地址: | 518000 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多主多 i2c 通信 方法 系统 节点 设备 | ||
本发明涉及了一种多主多从的I2C通信方法、系统及节点设备,该节点设备,通过I2C总线与其它节点设备相连,所述节点设备包括内置I2C模块的MCU,且所述MCU具有SDA口、SCL口、第一IO口和第二IO口,其特征在于,所述第一IO口与所述SDA口相连,所述第二IO口与所述SCL口相连,而且,所述MCU,用于通过所述SDA口、SCL口接收数据,而且,在需要发送数据时,按照I2C时序生成数据帧,并通过所述第一IO口和所述第二IO口发送数据。实施本发明的技术方案,节点设备即使在模式切换时,或,在主模式下发送数据时,都可接收到其它处于主模式的节点设备发给自己的数据,因此,不会丢失数据。
技术领域
本发明涉及串行通信领域,尤其涉及一种多主多从的I2C通信方法、系统及节点设备。
背景技术
现有集成电路(IC)之间通讯接口中,I2C(Inter-Integrated Circuit)是一种应用极为广泛的总线方式,I2C总线是PHLIPS公司推出的一种串行总线,I2C总线只有两根双向信号线:一根是SDA数据线,另一根是SCL时钟线。
在实际应用中,I2C总线只占用两个IO脚,时序简单,因此,绝大多数MCU都内置了硬件的I2C模块。I2C模块只工作在主从模式中的其中一种,在多主多从的I2C系统中,通常要做一次切换,在切换的过程中以及作为主设备时,无法收到别的处于主模式的节点设备发给自己的数据,即,可能会丢数据。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述可能丢数据的缺陷,提供一种多主多从的I2C通信方法、系统及节点设备。
本发明解决其技术问题所采用的技术方案是:构造一种节点设备,通过I2C总线与其它节点设备相连,所述节点设备包括内置I2C模块的MCU,且所述MCU具有SDA口、SCL口、第一IO口和第二IO口,所述第一IO口与所述SDA口相连,所述第二IO口与所述SCL口相连,而且,
所述MCU,用于通过所述SDA口、SCL口接收数据,而且,在需要发送数据时,按照I2C时序生成数据帧,并通过所述第一IO口和所述第二IO口发送数据。
优选地,所述MCU,还用于在需要发送数据时,将所述第一IO口和所述第二IO口设置为输出接口;在不需要发送数据时,将所述第一IO口和所述第二IO口设置为输入接口。
优选地,还包括第一限流电阻和第二限流电阻,而且,所述第一IO口通过所述第一限流电阻与所述SDA口相连,所述第二IO口通过所述第二限流电阻与所述SCL口相连。
优选地,所述MCU,还用于在通过所述第一IO口和所述第二IO口发送数据时,还检测I2C总线上的电平是否与自身发送的电平相一致,若不一致,则停止发送数据。
优选地,所述MCU,还用于在需要发送数据时,先检测I2C总线是否空闲,并在空闲时通过所述第一IO口和所述第二IO口发送数据。
本发明还构造一种多主多从的I2C通信系统,其特征在于,包括多个以上所述的节点设备。
本发明还构造一种多主多从的I2C通信方法,包括以下步骤:
通过SDA口、SCL口接收数据;
在需要发送数据时,按照I2C时序生成数据帧,并通过第一IO口和第二IO口发送数据,其中,所述第一IO口与所述SDA口相连,所述第二IO口与所述SCL口相连。
优选地,还包括:
在需要发送数据时,将所述第一IO口和所述第二IO口设置为输出接口;在不需要发送数据时,将所述第一IO口和所述第二IO口设置为输入接口。
优选地,在通过所述第一IO口和所述第二IO口发送数据时,还进行以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳柴火创客教育服务有限公司,未经深圳柴火创客教育服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810563128.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:数据线识别系统及方法
- 下一篇:基于MCU串口通信的控制方法及装置