一种I2C总线控制接口电路的制作方法

文档序号:14632085发布日期:2018-06-08 19:08阅读:247来源:国知局
一种I2C总线控制接口电路的制作方法

本实用新型涉及I2C集成电路技术领域,尤其涉及一种I2C总线控制接口电路。



背景技术:

IP核全称知识产权核(Intellectual Property Core),是指某一方提供的芯片设计模块。设计人员能够以IP核为基础进行专用集成电路或现场可编程逻辑门阵列(FPGA)的逻辑设计,以缩短设计周期、提高设计质量与效率。

随着集成电路芯片应用的日益增长,I2C总线应运而生。I2C(Inter-Integrated Circuit)总线是由PHILIPS(飞利浦)公司开发的两线式串行总线,可以用于连接微控制器及其外围设备,是微电子通信控制领域广泛采用的一种总线标准。I2C总线有两根信号线:一根双向的数据线SDA;另一根是时钟线SCL。所有接到I2C总线上的设备的串行数据都接到总线的SDA线,各设备的时钟线SCL接到总线的SCL线。

I2C总线设备因其简单性、有效性、多主控等优点被广泛用。随着集成电路设计的规模更大、速度更快,以及便携式设备的广泛需求,集成电路设计对功耗的要求越来越严苛,传统I2C设备的一些弊端随着逐渐显露出来。

I2C总线包含SDA(串行数据线)和SCL(串行时钟线)两个双向I/O线,由于I2C设备的SDA、SCL都是集电极开路或漏级开路结构,只能输出“0”,不能输出“1”,I2C总线必须通过上拉电阻连接电源,然而I2C总线输出低电平时,上拉电阻一直处于工作状态,上拉电阻会消耗额外的电流,导致I2C设备功耗增大。

综上所述,现有技术中存在无法在保证I2C电路现有性能的基础上降低其上拉电阻的功率消耗的问题。



技术实现要素:

本实用新型的目的在于提供一种I2C总线控制接口电路,旨在解决现有技术所存在的无法在保证I2C电路现有性能的基础上降低其上拉电阻的功率消耗的问题。

本实用新型是这样实现的,本实用新型第一方面提供一种I2C总线控制接口电路,包括主设备、从设备以及I2C总线,所述主设备与所述I2C总线连接,所述从设备连接在所述I2C总线上,所述I2C总线控制接口电路还包括开关模块和上拉电阻模块;

所述主设备连接所述开关模块的输入端以及控制端,所述开关模块的输出端与所述上拉电阻模块的第一端连接,所述上拉电阻模块的第二端与所述I2C总线连接;

所述主设备检测所述I2C总线的电平状态,并根据所述电平状态通过控制所述开关模块的开关状态以与所述上拉电阻模块进行连接或者断开。

结合第一方面,在第一方面的第一种实施方式中,当所述主设备检测到所述I2C总线为低电平时,所述主设备控制所述开关模块处于关断状态,以断开与所述上拉电阻模块之间的连接;

当所述主设备检测到所述I2C总线为高电平时,所述主设备控制所述开关模块处于导通状态,以导通与所述上拉电阻模块之间的连接。

结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述I2C总线包括SCL线,所述开关模块包括第一开关器件,所述上拉电阻模块包括第一上拉电阻:

所述主设备连接所述第一开关器件的输入端以及控制端,所述第一开关器件的输出端与所述第一上拉电阻的第一端连接,所述第一上拉电阻的第二端与所述SCL线连接;

当所述主设备检测到所述SCL线为低电平时,所述主设备控制所述第一开关器件处于关断状态,以断开与所述第一上拉电阻之间的连接;

当所述主设备检测到所述SCL线为高电平时,所述主设备控制所述第一开关器件处于导通状态,以导通与第一上拉电阻之间的连接。

结合第一方面的第一种实施方式,在第一方面的第三种实施方式中,所述I2C总线包括SDA线,所述开关模块包括第二开关器件,所述上拉电阻模块包括第二上拉电阻:

所述主设备连接所述第二开关器件的输入端以及控制端,所述第二开关器件的输出端与所述第二上拉电阻的第一端连接,所述第二上拉电阻的第二端与所述SDA线连接;

当所述主设备检测到所述SDA线为低电平时,所述主设备控制所述第二开关器件处于关断状态,以断开与所述第二上拉电阻之间的连接;

当所述主设备检测到所述SDA线为高电平时,所述主设备控制所述第二开关器件处于导通状态,以导通与第二上拉电阻之间的连接。

结合第一方面的第一种实施方式,在第一方面的第四种实施方式中,所述I2C总线包括SCL线和SDA线,所述开关模块包括第一开关器件和第二开关器件,所述上拉电阻模块包括第一上拉电阻和第二上拉电阻:

所述主设备连接所述第一开关器件的输入端以及控制端,所述第一开关器件的输出端与所述第一上拉电阻的第一端连接,所述第一上拉电阻的第二端与所述SCL线连接;

所述主设备连接所述第二开关器件的输入端以及控制端,所述第二开关器件的输出端与所述第二上拉电阻的第一端连接,所述第二上拉电阻的第二端与所述SDA线连接;

当所述主设备检测到所述SCL线和所述SDA线为低电平时,所述主设备控制所述第一开关器件和所述第二开关器件处于关断状态,以断开与所述第一上拉电阻和所述第二上拉电阻之间的连接;

当所述主设备检测到所述SCL线和所述SDA线为高电平时,所述主设备控制所述第一开关器件和所述第二开关器件处于导通状态,以导通与所述第一上拉电阻和所述第二上拉电阻之间的连接;

当所述主设备检测到所述SCL线为低电平并且所述SDA线为高电平时,所述主设备控制所述第一开关器件处于关断状态,以断开SCL线与所述第一上拉电阻之间的连接,并控制所述第二开关器件处于导通状态,以导通SDA线与所述第二上拉电阻之间的连接;

当所述主设备检测到所述SCL线为高电平并且所述SDA线为低电平时,所述主设备控制所述第一开关器件处于导通状态,以导通SCL线与所述第一上拉电阻之间的连接,并控制所述第二开关器件处于关断状态,以断开SDA线与所述第二上拉电阻之间的连接。

结合第一方面的第四种实施方式,在第一方面的第五种实施方式中,所述第一开关器件为第一三态缓冲器,所述第二开关器件为第二三态缓冲器;

所述第一三态缓冲器的输入端为所述第一开关器件的输入端,所述第一三态缓冲器的使能端为所述第一开关器件的控制端,所述第一三态缓冲器的输出端为所述第一开关器件的输出端;

所述第二三态缓冲器的输入端为所述第二开关器件的输入端,所述第二三态缓冲器的使能端为所述第二开关器件的控制端,所述第二三态缓冲器的输出端为所述第二开关器件的输出端。

结合第一方面的第五种实施方式,在第一方面的第六种实施方式中,所述I2C总线控制接口电路还包括充电从设备、第一二极管、第二二极管以及电容,所述充电从设备连接所述SCL线和所述SDA线,所述第一二极管的阳极连接所述SDA线,所述第一二极管的阴极连接所述充电从设备的充电端、所述第二二极管的阴极以及所述电容的第一端,所述第二二极管的阳极连接所述SCL线,所述电容的第二端接地。

在本实用新型中,通过采用包括主设备、从设备、I2C总线、开关模块以及上拉电阻模块的I2C总线控制接口电路,使得I2C总线发生电平变化时,主设备检测I2C总线的电平状态,并且根据该电平状态控制开关模块的开关状态,从而控制I2C总线与上拉电阻模块进行连接或者断开,以降低上拉电阻模块的功率消耗。该I2C总线控制接口电路成本低,且能够稳定可靠地控制I2C总线与上拉电阻模块进行连接或者断开,解决了现有技术所存在的I2C电路因上拉电阻导致功耗增大的问题。

附图说明

图1是本实用新型一实施例所提供的I2C总线控制接口电路的电路结构示意图;

图2是本实用新型一实施例所提供的I2C总线控制接口电路的流程示意图;

图3是本实用新型另一实施例所提供的I2C总线控制接口电路的电路结构示意图;

图4是本实用新型另一实施例所提供的I2C总线控制接口电路的流程示意图;

图5是本实用新型另一实施例所提供的I2C总线控制接口电路的流程示意图;

图6是本实用新型另一实施例所提供的I2C总线控制接口电路的电路结构示意图。

具体实施方式

为了使本实用新型的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本实用新型进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本实用新型,并不用于限定本实用新型。

以下请参照图1至图5对本实用新型的实现进行详细的描述:

图1示出了本实用新型一实施例所提供的I2C总线控制接口电路的电路结构示意图,为了便于说明,仅示出了与本实施例相关的部分,详述如下:

如图1所示,本实用新型实施例所提供的一种I2C总线控制接口电路1,包括主设备10、从设备20以及I2C总线30,主设备10与I2C总线30连接,从设备20连接在I2C总线30上,还包括开关模块50和上拉电阻模块40。

其中,主设备10连接开关模块50的输入端以及控制端,开关模块50的输出端与上拉电阻模块40的第一端连接,上拉电阻模块40的第二端与I2C总线30连接;

主设备10检测I2C总线30的电平状态,并根据电平状态通过控制开关模块50的开关状态以与上拉电阻模块40进行连接或者断开。

具体的,I2C总线30中有数据传输时,I2C总线30上会发生电平变化,主设备10实时检测I2C总线30的电平状态,并根据I2C总线30上的电平状态控制开关模块50的开关状态,以控制I2C总线与上拉电阻模块40进行连接或者断开,从而对上拉电阻模块40进行动态开关控制,达到降低上拉电阻的功耗的目的,减轻I2C电路的功耗。

进一步地,作为本实用新型一优选实施方式,如图1和2所示,当主设备10检测到I2C总线30为低电平时,主设备10控制开关模块50处于关断状态,以断开I2C总线30与上拉电阻模块40之间的连接;

当主设备10检测到I2C总线30为高电平时,主设备10控制开关模块50处于导通状态,以导通I2C总线30与上拉电阻模块40之间的连接。

具体的,连接到I2C总线30上的任一设备输出低电平,则I2C总线30输出低电平,主设备10检测到该低电平,控制开关模块50处于断开状态,使I2C总线30断开与上拉电阻模块40之间的连接;

当主设备10检测到I2C总线30为低电平时,I2C总线30切换为push-pull模式(推挽输出模式),此时开关模块50断开,I2C总线30与上拉电阻模块40断开连接。

当I2C总线30输出高电平,主设备10检测到该高电平,控制开关模块50处于导通状态,使I2C总线30导通与上拉电阻模块40之间的连接;

当主设备10检测到I2C总线30为高电平时,I2C总线30切换为Open-drain模式(开漏输出模式),此时开关模块50导通,I2C总线30与上拉电阻模块40导通连接。

需要说明的是,在本实用新型实施例中,给出了检测到I2C总线30为低电平时,开关模块50处于断开状态,检测到I2C总线30为高电平时,开关模块50处于导通状态两种模式,并不是对其的唯一限定,本领域技术人员同样可以根据该原理设置其他的逻辑模式。

进一步地,作为本实用新型一优选实施方式,如图3和图4所示,I2C总线30包括SCL线31(串行时钟线),开关模块50包括第一开关器件51,上拉电阻模块40包括第一上拉电阻41。

其中,主设备10连接第一开关器件51的输入端以及控制端,第一开关器件51的输出端与第一上拉电阻41的第一端连接,第一上拉电阻41的第二端与SCL线31连接;

具体的,当SCL线31上的任一设备输出低电平,SCL线31即输出低电平,此时主设备10检测到SCL线31为低电平,SCL线31切换为push-pull模式,SCL的信号由SCL线31拉低,主设备10控制第一开关器件51处于关断状态,则SCL线31断开与第一上拉电阻41之间的连接;

当主设备10检测到SCL线31为高电平时,SCL线31切换为Open-drain模式,SCL信号由第一上拉电阻41拉高,主设备10控制第一开关器件51处于导通状态,则SCL线31导通与第一上拉电阻41之间的连接。

进一步地,作为本实用新型一优选实施方式,如图3和图5所示,I2C总线30包括SDA线32(串行数据线),开关模块50包括第二开关器件52,上拉电阻模块40包括第二上拉电阻42。

其中,主设备10连接第二开关器件52的输入端以及控制端,第二开关器件52的输出端与第二上拉电阻42的第一端连接,第二上拉电阻42的第二端与SDA线32连接;

具体的,当SDA线32上的任一设备输出低电平,SDA线32即输出低电平,此时主设备10检测到SDA线32为低电平,SDA线32切换为push-pull模式,SDA的信号由SDA线32拉低,主设备10控制第二开关器件52处于关断状态,则SDA线32断开与第二上拉电阻42之间的连接;

当主设备10检测到SDA线32为高电平时,SDA线32切换为Open-drain模式,SDA信号由第二上拉电阻42拉高,主设备10控制第二开关器件52处于导通状态,则SDA线32导通与第二上拉电阻42之间的连接。

进一步地,作为本实用新型一优选实施方式,如图3所示,I2C总线30包括SCL线31和SDA线32,开关模块50包括第一开关器件51和第二开关器件52,上拉电阻模块40包括第一上拉电阻41和第二上拉电阻42。

其中,主设备10连接第一开关器件51的输入端以及控制端,第一开关器件51的输出端与第一上拉电阻41的第一端连接,第一上拉电阻41的第二端与SCL线31连接;

主设备10连接第二开关器件52的输入端以及控制端,第二开关器件52的输出端与第二上拉电阻42的第一端连接,第二上拉电阻42的第二端与SDA线32连接;

具体的,当主设备10检测到SCL线31和SDA线32为低电平时,SCL线31和SDA线32切换为push-pull模式,SCL的信号和SDA的信号由SCL线31和SDA线32拉低,主设备10控制第一开关器件51和第二开关器件52处于关断状态,SCL线31和SDA线32断开与第一上拉电阻41和第二上拉电阻42之间的连接;

当主设备10检测到SCL线31和SDA线32为高电平时,SCL线31和SDA线32切换为Open-drain模式,SCL信号和SDA信号由第一上拉电阻41和第二上拉电阻42拉高,主设备10控制第一开关器件51和第二开关器件52处于导通状态,SCL线31和SDA线32导通与第一上拉电阻41和第二上拉电阻42之间的连接。

当SCL线31输出低电平并且SDA线32输出高电平时,此时主设备10检测到SCL线31为低电平并且SDA线32为高电平,主设备10控制SCL线31切换为push-pull模式,SCL的信号由SCL线31拉低,主设备10控制第一开关器件51处于关断状态,SCL线31断开与第一上拉电阻41之间的连接;

并且主设备10控制SDA线32切换为Open-drain模式,SDA信号由第二上拉电阻42拉高,主设备10控制第二开关器件52处于导通状态,则SDA线32导通与第二上拉电阻42之间的连接。

当SCL线31输出高电平并且SDA线32输出低电平时,此时主设备10检测到SCL线31为高电平并且SDA线32为低电平,主设备10控制SCL线31切换为Open-drain模式,SCL信号由第一上拉电阻41拉高,主设备10控制第一开关器件51处于导通状态,则SCL线31导通与第一上拉电阻41之间的连接;

并且主设备10控制SDA线32切换为push-pull模式,SDA的信号由SDA线32拉低,主设备10控制第二开关器件52处于关断状态,则SDA线32断开与第二上拉电阻42之间的连接。

进一步地,作为本实用新型一优选实施方式,如图3所示,第一开关器件51为第一三态缓冲器510,第二开关器件52为第二三态缓冲器520。

其中,第一三态缓冲器510的输入端为第一开关器件51的输入端,第一三态缓冲器510的使能端为第一开关器件51的控制端,第一三态缓冲器510的输出端为第一开关器件51的输出端;

第二三态缓冲器520的输入端为第二开关器件52的输入端,第二三态缓冲器520的使能端为第二开关器件52的控制端,第二三态缓冲器520的输出端为第二开关器件52的输出端。

作为另一种实施例,I2C总线控制接口电路1还包括充电从设备21、第一二极管D1、第二二极管D2以及电容C,充电从设备21连接SCL线31和SDA线32,第一二极管D1的阳极连接SDA线32,第一二极管D1的阴极连接充电从设备21的充电端、第二二极管D2的阴极以及电容C的第一端,第二二极管D2的阳极连接SCL线31,电容C的第二端接地。

主设备10充电通过SCL线31和SDA线32为从设备21供电,SCL线31和SDA线32在不同的时刻可能是高电平也可能是低电平,所以需要使用二极管D1和D2进行整流当SDA线32为高电平时,第二上拉电阻R2接入,SDA线32通过第一二极管D1为充电从设备21供电,当SCL线31为高电平时,第一上拉电阻R1接入,SCL线31通过第二二极管D2为充电从设备21供电,当SCL线31和SDA线32都为高电平时,同时为充电从设备21供电,当SCL线31和SDA线32都为低电平时,由电容C为充电从设备21供电。

需要说明的是,在本实施例中,第一开关器件51也可以采用其他类似的逻辑门结构等实现,此处不作具体限制。

下面以图1所示的电路为例对本实用新型所提供的I2C总线30控制接口电路10的工作原理作具体说明,详述如下:

当I2C总线30上发生电平变化时,主设备10检测I2C总线30的电平状态并进行监控,主设备10检测到I2C总线30为低电平时,则根据当前I2C总线30的电平状态控制开关模块50处于关断状态,使得I2C总线30断开与上拉电阻模块40之间的连接;

当主设备10检测到I2C总线30为高电平时,则根据当前I2C总线30的电平状态控制开关模块50处于导通状态,使得I2C总线30导通与上拉电阻模块40之间的连接,从而达到通过该I2C总线控制接口电路动态控制上拉电阻与I2C总线的连接状态,以使得I2C总线为低电平时,动态关闭上拉电阻,使得上拉电阻不再产生功耗,从而达到降低功耗的目的。

在本实用新型中,通过采用包括主设备10、从设备20、I2C总线30、开关模块50、上拉电阻模块40的I2C总线控制接口电路,使得主设备10在检测到I2C总线30为低电平时,控制开关模块50断开,以使得上拉电阻模块40断开与I2C总线30的连接,使上拉电阻不再产生功耗,以降低I2C总线30的功耗;主设备10在检测到I2C总线30为高电平时,控制开关模块50导通,以使得上拉电阻模块40导通与I2C总线30的连接,不影响I2C总线30的性能。该I2C总线控制接口电路成本低,且能够稳定可靠地实现动态控制I2C总线30与上拉电阻的断开与导通,解决了现有技术所存在的无法在保证I2C电路现有性能的基础上降低其上拉电阻的功率消耗的问题。

以上所述仅为本实用新型的较佳实施例而已,并不用以限制本实用新型,凡在本实用新型的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本实用新型的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1