一种基于I2C总线的中断读取与清除的控制方法技术

技术编号:25223616 阅读:20 留言:0更新日期:2020-08-11 23:13
本发明专利技术公开了一种基于I2C总线的中断读取与清除的控制方法,包括以下步骤:步骤S101,中央控制器通过I2C总线接口配置设备控制器和寄存器,其中,寄存器包括:中断源状态寄存器,用于发出模块的中断请求;中断状态寄存器,用于获得模块的工作状态、中断标志和告警标志;步骤S103,设备控制器对中央控制器发送设备中断信号。通过对中央处理器I2C总线接口读取到的中断状态寄存器位bit清零,对发生中断而没有被中央处理器通过I2C总线接口读取到的中断状态寄存器位bit不进行清零的控制,实现了中央处理器不会漏读设备的中断状态寄存器以及设备中断源的中断不会被释放直至中央处理器读取到了这个中断,确保了系统工作的可靠性和安全性,以及和对设备的保护。

【技术实现步骤摘要】
一种基于I2C总线的中断读取与清除的控制方法
本专利技术涉及I2C总线
,具体来说,涉及一种基于I2C总线的中断读取与清除的控制方法。
技术介绍
I2C总线(INTERICBUS)是一个简单双向两线总线,用于连接微控制器及其外围器件。I2C总线最主要的优点是其简单性和有效性,所有符合I2C总线的器件都具有一个片上接口,使器件之间直接通过I2C总线通讯,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。I2C总线的另一个优点是,它支持多主控(multimastering),其中任何能够进行发送和接收的器件都可以成为主总线。在工业和电子控制系统中,I2C总线是用于中央处理器和其它设备之间的通讯接口,如果有设备异常,设备就会给中央处理器发出中断信号,中央处理器接收到设备中断信号后通过I2C总线接口读取设备的中断信息寄存器,如果发生中断的设备中断源对应的中断寄存器状态为高电平,表示设备中对应的中断源发生了异常,需要中央处理器执行合适的操作来保护设备能维持正常工作,避免对设备造成物理上的损坏。而目前在现有的设计中,中央处理器对设备中断寄存的读取清零会有中断遗漏的问题发生。设备中断遗漏的问题直接影响了系统工作性和对设备的保护,严重时可能会导致设备的物理损坏。针对相关技术中的问题,目前尚未提出有效的解决方案。
技术实现思路
针对相关技术中的问题,本专利技术提出一种基于I2C总线的中断读取与清除的控制方法,以克服现有相关技术所存在的上述技术问题。r>本专利技术的技术方案是这样实现的:一种基于I2C总线的中断读取与清除的控制方法,包括以下步骤:步骤S101,中央控制器通过I2C总线接口配置设备控制器和寄存器,其中,寄存器包括:中断源状态寄存器,用于发出模块的中断请求;中断状态寄存器,用于获得模块的工作状态、中断标志和告警标志;步骤S103,设备控制器对中央控制器发送设备中断信号,中央控制器接收到中断信号后通过I2C总线接口读取设备的中断状态寄存器,确定中断信号的中断源;步骤S105,设备控制器接收到中央控制器已经读取了设备的中断状态寄存器信号后,将已被中央控制器读取的中断状态寄存器位清零;步骤S107,中央控制器通过I2C总线接口进一步读取设备的中断源状态寄存器来检查发出中断的中断源。进一步的,步骤S101,进一步包括:设备系统时钟,用于选择时钟频率。进一步的,步骤S101中,其中,中断源状态寄存器为8比特位,寄存器地址十六进制数表示为0x00,该寄存器的每一个比特位为一个中断源;中断状态寄存器为8比特位,寄存器地址十六进制数表示为0x01,该寄存器的每一个比特位为一个中断。本专利技术的有益效果:本专利技术通过对中央处理器I2C总线接口读取到的中断状态寄存器位bit清零,对发生中断而没有被中央处理器通过I2C总线接口读取到的中断状态寄存器位bit不进行清零的控制,实现了中央处理器不会漏读设备的中断状态寄存器以及设备中断源的中断不会被释放直至中央处理器读取到了这个中断,确保了系统工作的可靠性和安全性,以及和对设备的保护。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的流程示意图;图2是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的原理框图示意图;图3是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的设备中断源例图;图4是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的设备中断源状态寄存器时序图;图5是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的设备中断状态寄存器发生时序图;图6是根据本专利技术实施例的一种基于I2C总线的中断读取与清除的控制方法的设备中断状态寄存器清除时序图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。根据本专利技术的实施例,提供了一种基于I2C总线的中断读取与清除的控制方法。如图1-2所示,根据本专利技术实施例的基于I2C总线的中断读取与清除的控制方法,包括以下步骤:步骤S101,中央控制器通过I2C总线接口配置设备控制器和寄存器,其中,寄存器包括:中断源状态寄存器,用于发出模块的中断请求;中断状态寄存器,用于获得模块的工作状态、中断标志和告警标志;步骤S103,设备控制器对中央控制器发送设备中断信号,中央控制器接收到中断信号后通过I2C总线接口读取设备的中断状态寄存器,确定中断信号的中断源;步骤S105,设备控制器接收到中央控制器已经读取了设备的中断状态寄存器信号后,将已被中央控制器读取的中断状态寄存器位清零;步骤S107,中央控制器通过I2C总线接口进一步读取设备的中断源状态寄存器来检查发出中断的中断源。其中,步骤S101,进一步包括:设备系统时钟,用于选择时钟频率。另外,步骤S101中,其中,中断源状态寄存器为8比特位,寄存器地址十六进制数表示为0x00,该寄存器的每一个比特位为一个中断源;中断状态寄存器为8比特位,寄存器地址十六进制数表示为0x01,该寄存器的每一个比特位为一个中断。借助于上述方案,通过对中央处理器I2C总线接口读取到的中断状态寄存器位bit清零,对发生中断而没有被中央处理器通过I2C总线接口读取到的中断状态寄存器位bit不进行清零的控制,实现了中央处理器不会漏读设备的中断状态寄存器以及设备中断源的中断不会被释放直至中央处理器读取到了这个中断,确保了系统工作的可靠性和安全性,以及和对设备的保护。另外,在一个实施例中,如图3所示,以设备温度过温信号来表示中断源。设备温度过温会对设备造成损坏,所以在设备中用模拟的温度监测器来实时监测设备的工作温度,不同的设备的过温阈值不一样,一般的过温阈值规定为125摄氏度。如果设备中温度监测器监测到的温度高于或者等于设备过温阈值,设备温度过温中断源就会输出高电平,如果设备中温度监测器监测到的温度低于了设备过温阈值,设备温度过温中断源就会输出低电平。设备温度过温中断源输出高电平就表示设备有异常发生,需要向中央处理器发起中断。如图3-图4所示,中断源状态寄存器的值是反应中断源的状态。本时序图中以图3产生的设备温度过温中断源信号为输入,中断源定义在中断源寄存器的比特位0,所有中断源均本文档来自技高网...

【技术保护点】
1.一种基于I2C总线的中断读取与清除的控制方法,其特征在于,包括以下步骤:/n步骤S101,中央控制器通过I2C总线接口配置设备控制器和寄存器,其中,寄存器包括:/n中断源状态寄存器,用于发出模块的中断请求;/n中断状态寄存器,用于获得模块的工作状态、中断标志和告警标志;/n步骤S103,设备控制器对中央控制器发送设备中断信号,中央控制器接收到中断信号后通过I2C总线接口读取设备的中断状态寄存器,确定中断信号的中断源;/n步骤S105,设备控制器接收到中央控制器已经读取了设备的中断状态寄存器信号后,将已被中央控制器读取的中断状态寄存器位清零;/n步骤S107,中央控制器通过I2C总线接口进一步读取设备的中断源状态寄存器来检查发出中断的中断源。/n

【技术特征摘要】
1.一种基于I2C总线的中断读取与清除的控制方法,其特征在于,包括以下步骤:
步骤S101,中央控制器通过I2C总线接口配置设备控制器和寄存器,其中,寄存器包括:
中断源状态寄存器,用于发出模块的中断请求;
中断状态寄存器,用于获得模块的工作状态、中断标志和告警标志;
步骤S103,设备控制器对中央控制器发送设备中断信号,中央控制器接收到中断信号后通过I2C总线接口读取设备的中断状态寄存器,确定中断信号的中断源;
步骤S105,设备控制器接收到中央控制器已经读取了设备的中断状态寄存器信号后,将已被中央控制器读取的中断状态寄存器位清零;
步骤S107...

【专利技术属性】
技术研发人员:廖新志
申请(专利权)人:上海琪云工业科技有限公司
类型:发明
国别省市:上海;31

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

1