一种通过中断实现通信方法、I2C器件及I2C系统技术方案

技术编号:7532388 阅读:265 留言:0更新日期:2012-07-12 20:53
本发明专利技术公开了一种通过中断实现通信方法、I2C器件及I2C系统,在本发明专利技术提供的方案中,I2C主器件先将需要发送的数据信息通过预设的方式进行计算,从而得到校验信息,再向I2C从器件发送包括数据信息和校验信息的指令;I2C从器件接收I2C主器件发送的数据信息和校验信息,并通过预设的方式计算该数据信息得到验证信息,再判断验证信息和校验信息是否相同,如果相同,则对该数据信息进行后续处理操作,否则,将数据信息标注为错误信息并放入缓存中。本发明专利技术在I2C主器件和I2C从器件两端设置信息验证的过程,以避免在数据发送过程中因数据丢失而造成后续处理错误,从而降低了数据处理过程中的出错率。

【技术实现步骤摘要】

本专利技术涉及通信
,更具体的说,涉及通过中断实现通信方法、I2C器件及 I2C系统。
技术介绍
I2C (Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C主器件和I2C从器件就是基于I2C总线上的控制器,I2C主器件和I2C从器件被广泛的使用。现有的I2C从器件上只设置有器件地址及应答信号,当ー个I2C主器件向I2C从器件发送数据的时候,I2C从器件通过器件地址可以了解到是哪个I2C主器件提出的请求; I2C从器件在处理完I2C主器件发送的数据以后,会发送应答信号,以通知I2C主器件处理完成,等待I2C主器件再获取I2C从器件已处理完成的数据。在对现有技术的研究和实践过程中,本专利技术的专利技术人发现现有技术存在以下问题在I2C主器件向I2C从器件发送数据的过程中,有可能因为某种原因造成数据丢失,而I2C从器件接收并处理的却是错误的数据,并且I2C从器件还会将错误的数据返回给 I2C主器件,从而导致整个过程出现问题,所以现有的I2C器件在数据通信过程中的错误率问ο因此,如何降低I2C器件在数据通信过程中的错误率,成为目前最需要解决的问题。
技术实现思路
有鉴于此,本专利技术的设计目的在干,提供一种通过中断实现通信方法、I2C器件及 I2C系统,以降低I2C器件在数据通信过程中的错误率。本专利技术实施例是这样实现的一种通过中断实现通信方法,包括获取待发送的数据信息;通过预设方式计算所述数据信息的校验信息;向I2C从器件发送包括所述数据信息和所述校验信息的指令;读取所述I2C从器件的缓存中的信息;当所述缓存中的存在错误信息吋,则向所述I2C从器件发送包括所述数据信息和所述校验信息的指令,直至所述缓存中不存在所述错误信息为止。优选地,在上述的通过中断实现通信方法中,所述预设方式具体为所述数据信息相加后再取余。一种通过中断实现通信方法,包括通过中断来获取I2C主器件发送的包括数据信息和校验信息的指令;通过预设方式计算所述数据信息的验证信息;判断所述验证信息与所述校验信息是否相同,若相同,则对所述数据信息进行处理,再将处理后的数据放入缓存中;否则,将所述数据信息标注为错误信息并放入缓存中。优选地,在上述的通过中断实现通信方法中,所述预设方式具体为所述数据信息相加后再取余。优选地,在上述的通过中断实现通信方法中,所述指令还包括结束符;当接收到所述指令中的结束符时,则结束此次的接收。优选地,在上述的通过中断实现通信方法中,在对所述数据信息进行处理时,将处理中状态标志放入缓存。优选地,在上述的通过中断实现通信方法中,在对所述数据信息进行处理完成吋, 将处理完成状态标志放入缓存。ー种12C主器件,包括获取单元,用于获取待发送的数据信息;计算单元,用于通过预设方式计算所述数据信息的校验信息;发送单元,用于向I2C从器件发送包括所述数据信息和所述校验信息的指令;读取单元,用于读取所述I2C从器件的缓存中的信息;判断単元,用于当所述缓存中的存在错误信息时,则所述发送単元向所述I2C从器件发送包括所述数据信息和所述校验信息的指令,直至所述缓存中不存在所述错误信息为止。ー种12C从器件,包括接收单元,用于通过中断来获取I2C主器件发送的包括数据信息和校验信息的指令;计算单元,用于通过预设方式计算所述数据信息的验证信息;判断単元,用于判断所述验证信息与所述校验信息是否相同;处理单元,用于在所述验证信息与所述校验信息相同时,对所述数据信息进行处理,再将处理后的数据放入缓存中;错误标注単元,用于在所述验证信息与所述校验信息不同时,将所述数据信息标注为错误信息并放入缓存中。ー种I2C系统,包括I2C主器件和I2C从器件;所述I2C主器件,用于获取待发送的数据信息;通过预设方式计算所述数据信息的校验信息;向I2C从器件发送包括所述数据信息和所述校验信息的指令;读取所述I2C 从器件的缓存中的信息;当所述缓存中的存在错误信息时,则向所述I2C从器件发送包括所述数据信息和所述校验信息的指令,直至所述缓存中不存在所述错误信息为止。所述I2C从器件,用于通过中断来获取I2C主器件发送的包括数据信息和校验信息的指令;通过预设方式计算所述数据信息的验证信息;判断所述验证信息与所述校验信息是否相同,若相同,则对所述数据信息进行处理,再将处理后的数据放入缓存中;否则,将所述数据信息标注为错误信息并放入缓存中。与现有技术相比,本实施例提供的技术方案具有以下优点和特点在本专利技术提供的方案中,I2C主器件先将需要发送的数据信息通过预设的方式进行计算,从而得到校验信息,再向I2C从器件发送包括数据信息和校验信息的指令;I2C从器件接收I2C主器件发送的数据信息和校验信息,并通过预设的方式计算该数据信息得到验证信息,再判断验证信息和校验信息是否相同,如果相同,则对该数据信息进行后续处理操作,否则,将数据信息标注为错误信息并放入缓存中。本专利技术在I2C主器件和I2C从器件两端设置信息验证的过程,以避免在数据发送过程中因数据丢失而造成后续处理错误,从而降低了数据处理过程中的出错率。附图说明为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术所提供的一种通过中断实现通信方法的流程图;图2为本专利技术所提供的另ー种通过中断实现通信方法的流程图;图3为本专利技术所提供的ー种I2C系统的模块图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供了一种通过中断实现通信方法、I2C器件及I2C系统,以解决现有技术中存在的在数据通信过程中的错误率高的问题。由于上述通过中断实现通信方法、I2C器件及I2C系统的具体实现存在多种方式, 下面通过具体实施例进行详细说明请參见图1所示,图1所示的为ー种通过中断实现通信方法,该方法适用于I2C主器件,该方法包括步骤S11、获取待发送的数据信息;步骤S12、通过预设方式计算所述数据信息的校验信息;步骤S13、向I2C从器件发送包括所述数据信息和所述校验信息的指令;步骤S14、读取所述I2C从器件的缓存中的信息;步骤S15、当所述缓存中的存在错误信息时,则返回步骤S13,直至所述缓存中不存在所述错误信息为止。在图1所示的实施例中,I2C主器件需要先通过预设方式计算出待发的数据信息的校验信息,再向I2C从器件发送完数据信息和校验信息以后,还要再读取I2C从器件的缓存中的信息,判断I2C从器件的缓存中的信息是否为错误信息,如果是,则说明在I2C主器件向I2C从器件发送数据的过程中出现数据丢失的情況,需要I2C主器件再次向I2C从器件发送数据信息和校验信息,直至I2C从器件的缓存中不存在所述错误信息为止。通过图 1所示的实施例可以看出,本本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:罗前锋朱湘军
申请(专利权)人:广州视声电子科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术