I2c设备通信方法及系统的制作方法

文档序号:10612753阅读:1107来源:国知局
I2c设备通信方法及系统的制作方法
【专利摘要】本发明提供了一种I2C设备通信方法及系统,其中,所述I2C设备通信方法用于多个I2C设备之间的数据传输,所述多个I2C设备中数据发送方在传输数据之前,先传输一开始通信信息。多个I2C设备之间在传输数据之前,数据发送方先传输一开始通信信息,避免了所述多个I2C设备中数据接收方的数据被错误的改写,提高了数据传输的有效性和安全性。
【专利说明】
12G设备通信方法及系统
技术领域
[0001]本发明涉及数据通信领域,尤其是一种I2C设备通信方法及系统。
【背景技术】
[0002]在嵌入式项目中,经常会用到I2C(Inter_Integrated Circuit)总线。I2C总线是一种由PHILIPS公司开发的两线式串行总线(包括时钟信号线及数据信号线),用于连接微控制器及其外围设备,是微电子通信领域广泛采用的一种总线标准。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。
[0003]I2C总线自问世以来,因其具有接口线小、控制方式简单、器件封装形式小、通信速率较高等优点,而备受各企业的青睐。
[0004]当前,在服务器主板上一般会运用I2C总线将外围设备连接到系统上。但是在实现外围设备与所述主板的通信过程中,外围设备中的I2C存储器中的数据有可能被错误的改写掉,从而降低了数据传输的有效性和安全性。

【发明内容】

[0005]本发明的目的在于提供一种I2C设备通信方法及系统,以解决I2C设备中存储的数据被错误改写的问题,从而提高数据传输的有效性。
[0006]为了达到上述目的,本发明提供了一种I2C设备通信方法及系统,其中,所述I2C设备通信方法用于多个I2C设备之间的数据传输,所述多个I2C设备中数据发送方在传输数据之前,先传输一开始通信信息。
[0007]优选的,在上述的I2C设备通信方法中,所述开始通信信息包括一第一字节和一第二字节,所述第一字节为00000000,所述第二字节为00000001。
[0008]优选的,在上述的I2C设备通信方法中,在传输所述开始通信信息时,先传输所述第一字节,再传输所述第二字节。
[0009]优选的,在上述的I2C设备通信方法中,用于I2C主控器与I2C被控器之间的数据传输。
[0010]优选的,在上述的I2C设备通信方法中,用于多个I2C主控器之间的数据传输。
[0011]优选的,在上述的I2C设备通信方法中,用于多个I2C主控器之间以及I2C主控器与I2C被控器之间的数据传输。
[0012]优选的,在上述的I2C设备通信方法中,当多个所述I2C主控器之间进行数据传输时,若一数据接收方未收到所述开始通信信息时,则所述数据接收方放弃数据发送方传输的数据。
[0013]本发明还提供了一种I2C设备通信系统,包括多个I2C设备,所述多个I2C设备中数据发送方在传输数据之前,先传输一开始通信信息。
[0014]优选的,在上述的I2C设备通信系统中,所述开始通信信息包括一第一字节和一第二字节,所述第一字节为00000000,所述第二字节为00000001。
[0015]优选的,在上述的I2C设备通信系统中,在传输所述开始通信信息时,先传输所述第一字节,再传输所述第二字节。
[0016]优选的,在上述的I2C设备通信系统中,所述I2C设备包括至少一I2C被控器和至少一 12C主控器。
[0017]优选的,在上述的I2C设备通信系统中,所述I2C设备包括多个I2C主控器。
[0018]优选的,在上述的I2C设备通信系统中,当多个所述I2C主控器之间进行数据传输时,若数据接收方未收到所述开始通信信息,则所述数据接收方放弃数据发送方传输的数据。
[0019]在本发明提供的I2C设备通信方法及系统中,多个I2C设备之间在传输数据之前,所述多个I2C设备中的数据发送方先传输一开始通信信息,避免了 I2C设备中数据接收方的数据被错误的改写,提高了数据传输的有效性和安全性。
【附图说明】
[0020]图1为本发明实施例一中I2C设备通信系统的示意图;
[0021]图2为本发明实施例二中I2C设备通信系统的示意图。
【具体实施方式】
[0022]下面将结合示意图对本发明的【具体实施方式】进行更详细的描述。根据下列描述和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
[0023]实施例一
[0024]本发明实施例提供了一种I2C设备通信系统,如图1所示,包括多个I2C设备,所述多个I2C设备之间在传输数据之前,先传输一开始通信信息。所述I2C设备包括I2C被控器和至少一 I2C主控器。所述I2C被控器和至少一个I2C主控器之间通过I2C总线进行数据传输。
[0025]所述I2C设备包括一个I2C主控器以及多个I2C被控器,所述I2C主控器和多个I2C被控器之间通过I2C总线进行数据传输。也就是说当是一个I2C主控器和多个I2C被控器之间进行数据传输时,在所述I2C主控器和多个I2C被控器在进行数据传输之前,所述I2C主控器将以广播的形式先发送一开始通信信息,并在所述开始通信信息之后进行数据传输。
[0026]进一步的,所述开始通信信息包括一第一字节和一第二字节,所述I2C主控器以广播的形式先发送所述第一字节,然后再发送所述第二字节,所述第一字节为00000000,所述第二字节为00000001。由于所述第一字节和第二字节均是以广播的形式发出,所以所述I2C设备通信系统中的I2C被控器均作好接收数据的准备,且无需返回数据包给所述I2C主控器。紧接着所述I2C主控器发送出需要传输的数据,所述需要传输的数据中包括接收该需要传输的数据的I2C被控器的地址,该地址所对应的I2C被控器开始接收数据,而其他I2C被控器则忽略所述需要传输的数据。
[0027]本实施例还提供了一种I2C设备通信方法,用于多个I2C设备之间的数据通传输,所述多个I2C设备之间在传输数据之前,先传输一开始通信信息。
[0028]具体的,所述I2C设备包括至少一I2C被控器和至少一I2C主控器。在本实施例中,所述I2C设备包括一个I2C主控器以及多个I2C被控器,也就是说,在一个I2C主控器和多个I2C被控器之间进行数据传输,在所述I2C主控器和多个I2C被控器在进行数据传输之前,所述I2C主控器将以广播的形式先发送一开始通信信息,并在所述开始通信信息之后进行数据传输。
[0029]进一步的,所述开始通信信息包括第一字节和第二字节,所述I2C主控器以广播的形式先发送所述第一字节,然后再发送所述第二字节,所述第一字节为00000000,所述第二字节为00000001。由于所述第一字节和第二字节均是以广播的形式发出,所以所述I2C设备通信系统中的I2C被控器均作好接收数据的准备,且无需返回数据包给所述I2C主控器。紧接着所述I2C主控器发送出需要传输的数据,所述需要传输的数据中包括接收该需要传输的数据的I2C被控器的地址,该地址所对应的I2C被控器开始接收数据,而其他I2C被控器则忽略所述需要传输的数据。
[0030]在本发明的其他实施例中,还可以是多个I2C主控器同时与一个I2C被控器之间进行数据传输,此时,要求所述I2C被控器为多端口被控器。同时,所述多个I2C主控器之间也可以进行数据传输,所述多个I2C主控器之间进行数据传输的过程如下的实施例二中所述。
[0031]实施例二
[0032]本发明实施例提供了一种I2C设备通信系统,如图2所示,包括多个I2C设备,所述多个I2C设备之间在传输数据之前,先传输一开始通信信息。所述多个I2C设备之间通过I2C总线进行数据传输。
[0033]所述I2C设备包括多个I2C主控器,而不包括I2C被控器时,也就是说,当需要在多个I2C主控器之间进行数据传输时,如同实施例一一样,在所述多个I2C主控器之间进行数据传输之前,也需要发送所述开始通信信息,所述开始通信信息包括第一字节和第二字节,所述第一字节为00000000,所述第二字节为00000001,并且也是先发送所述第一字节,然后在发送所述第二字节。进一步的,所述第二字节即为I2C协议中的START BYTE。所述I2C主控器也是以广播的形式将所述开始通信信息发送出去,以通知其他I2C主控器作好接收数据的准备。紧接着所述I2C主控器发送出需要传输的数据,所述需要传输的数据中包括接收该需要传输的数据的I2C主控器的地址,该地址所对应的I2C主控器开始接收数据,而其他I2C主控器则忽略所述需要传输的数据。当该地址所对应的I2C主控器未接收到所述开始通信信息时,该地址所对应的I2C主控器将忽略所述需要传输的数据。因此,当所述I2C设备包括多个I2C主控器时,可以理解为所述多个I2C主控器之间是以一种加密的方式来传输所述需要传输的数据,而所述开始通信信息即为加密的密码,从而保证了数据的安全性和有效性。
[0034]本实施例还提供了一种I2C设备通信方法,用于多个I2C设备之间的数据通传输,所述多个I2C设备之间在传输数据之前,先传输一开始通信信息。
[0035]所述I2C设备包括多个I2C主控器,而不包括I2C被控器,也就是说,需要在多个I2C主控器之间进行数据传输,在所述多个I2C主控器之间进行数据传输之前,也需要发送所述开始通信信息,并且也是先发送所述第一字节,然后在发送所述第二字节。所述I2C主控器也是以广播的形式将所述开始通信信息发送出去,以通知其他I2C主控器作好接收数据的准备。紧接着所述I2C主控器发送出需要传输的数据,所述需要传输的数据中包括接收该需要传输的数据的I2C主控器的地址,该地址所对应的I2C主控器开始接收数据,而其他I2C主控器则忽略所述需要传输的数据。当该地址所对应的I2C主控器未接收到所述开始通信信息时,该地址所对应的I2C主控器将忽略所述需要传输的数据。因此,当所述I2C设备包括多个I2C主控器时,可以理解为所述多个I2C主控器之间是以一种加密的方式来传输所述需要传输的数据,而所述开始通信信息即为加密的密码,从而保证了数据的安全性和有效性。
[0036]综上,在本发明实施例提供的I2C设备通信方法及系统中,多个I2C设备之间在传输数据之前,所述多个I2C设备中的数据发送方先传输一开始通信信息,避免了所述多个I2C设备中数据接收方的数据被错误的改写,提高了数据传输的有效性和安全性。
[0037]上述仅为本发明的优选实施例而已,并不对本发明起到任何限制作用。任何所属技术领域的技术人员,在不脱离本发明的技术方案的范围内,对本发明揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本发明的技术方案的内容,仍属于本发明的保护范围之内。
【主权项】
1.一种I2C设备通信方法,用于多个I2C设备之间的数据传输,其特征在于,所述多个I2C设备中数据发送方在传输数据之前,先传输一开始通信信息。2.如权利要求1所述的I2C设备通信方法,其特征在于,所述开始通信信息包括一第一字节和一第二字节,所述第一字节为00000000,所述第二字节为00000001。3.如权利要求2所述的I2C设备通信方法,其特征在于,在传输所述开始通信信息时,先传输所述第一字节,再传输所述第二字节。4.如权利要求1所述的I2C设备通信方法,其特征在于,用于I2C主控器与I2C被控器之间的数据传输。5.如权利要求1所述的I2C设备通信方法,其特征在于,用于多个I2C主控器之间的数据传输。6.如权利要求1所述的I2C设备通信方法,其特征在于,用于多个I2C主控器之间以及I2C主控器与I2C被控器之间的数据传输。7.如权利要求5或6所述的I2C设备通信方法,其特征在于,当多个所述I2C主控器之间进行数据传输时,若一数据接收方未收到所述开始通信信息,则所述数据接收方放弃数据发送方传输的数据。8.—种I2C设备通信系统,其特征在于,包括多个I2C设备,所述多个I2C设备中数据发送方在传输数据之前,先传输一开始通信信息。9.如权利要求8所述的I2C设备通信系统,其特征在于,所述开始通信信息包括一第一字节和一第二字节,所述第一字节为00000000,所述第二字节为00000001。10.如权利要求9所述的I2C设备通信系统,其特征在于,在传输所述开始通信信息时,先传输所述第一字节,再传输所述第二字节。11.如权利要求8所述的12C设备通信系统,其特征在于,所述12C设备包括至少一12C被控器和至少一 I2C主控器。12.如权利要求8所述的12C设备通信系统,其特征在于,所述12C设备包括多个12C主控器。13.如权利要求12所述的I2C设备通信系统,其特征在于,当多个所述I2C主控器之间进行数据传输时,若数据接收方未收到所述开始通信信息,则所述数据接收方放弃数据发送方传输的数据。
【文档编号】G06F13/42GK105975425SQ201610278189
【公开日】2016年9月28日
【申请日】2016年4月28日
【发明人】施敏捷
【申请人】英业达科技有限公司, 英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1