CN102622325A - I2c总线启动与停止电路结构 - Google Patents
I2c总线启动与停止电路结构 Download PDFInfo
- Publication number
- CN102622325A CN102622325A CN2011104370095A CN201110437009A CN102622325A CN 102622325 A CN102622325 A CN 102622325A CN 2011104370095 A CN2011104370095 A CN 2011104370095A CN 201110437009 A CN201110437009 A CN 201110437009A CN 102622325 A CN102622325 A CN 102622325A
- Authority
- CN
- China
- Prior art keywords
- bus
- gate
- type flip
- flip flop
- flop
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000009191 jumping Effects 0.000 claims description 3
- 230000000630 rising effect Effects 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Images
Landscapes
- Logic Circuits (AREA)
Abstract
本发明公开了一种I2C总线启动停止电路结构,它包括总线启动模块和总线停止模块;通过SCK对第一D触发器的复位端R的控制,在第一D触发器检测到启动信号后,只有SCK从高变低时,第一D触发器的Q端才跳0,第三D触发器的Q端跳1,S/P跳1,总线启动;在第二D触发器检测到停止信号后,通过SCK对第二D触发器输入信号D的控制,在SCK为高电平期间,D恒定为1,第三触发器的复位信号恒定有效,S/P保持为0,总线停止。本发明在正确实现I2C总线数据传输基础上,保证I2C总线启动时不会因为数据线上的错误跳变或干扰影响正常启动且停止后不会因数据线上的错误跳变或干扰重新启动。
Description
技术领域
本发明特别涉及一种用于总线传输协议的I2C总线启动与停止电路结构,属于集成电路技术领域。
背景技术
对于应用了I2C总线协议的电路结构,I2C总线的启动与停止影响着I2C协议的正确执行。在时钟总线SCK保持为高电平期间,检测到数据总线SDA由高电平跳变为低电平时,标志总线启动位有效,即启动I2C总线,开始传输数据;而在时钟总线SCK保持为高电平期间,检测到数据总线SDA由低电平跳变为高电平,标志总线停止位有效,即结束I2C总线数据传输。在数据传输的过程中,只有在时钟为低电平期间,数据才可以变化(如图1所示)。
普通I2C总线电路结构只要检测到时钟总线SCK保持为高电平期间,数据总线SDA由高电平跳变为低电平便启动I2C总线。如果启动阶段数据总线上有数据的跳变,可能使总线未启动就进入停止,影响启动电路的正常执行。
在检测到总线停止信号之后,总线数据便停止传输数据。如果时钟总线SCK保持为高电平期间,数据总线出现由高跳低的干扰,总线就可能再次的启动,数据会错误传输,影响电路的正常执行。
发明内容
本发明的目的在于提供一种I2C总线启动与停止电路结构,其能够稳定的锁存启动与停止信号,防止启动时数据总线的错误数据对电路的影响和停止后再次的启动对电路正常执行的影响,从而克服了现有技术中的不足。
为实现上述发明目的,本发明采用了如下技术方案:
一种I2C总线启动与停止电路结构,它包括总线启动模块和总线停止模块;
所述总线启动模块包括第一二输入与非门,第一三输入或非门,第一、第二、第三、第五、第七,第八非门以及第一、第二D触发器;
所述总线停止模块包括第二、第三、第四二输入或非门,第四、第五、第六非门以及第二、第三D触发器;
进一步的,复位信号经第一非门取反后与SCK信号作为第一二输入与非门的两个输入信号,第一与非门的输出经第二非门取反后接第一D触发器的R端,SDA经第三非门取反后接第一触发器的CLK,第一D触发器的D端加工作电压(VDD),第一D触发器的Q输出端经第六非门取反后加至第二D触发器的R端,第二D触发器的Q输出端与SCK信号作为第二或非门的两个输入端,第二或非门的输出经第四非门后接至第二D触发器的D端,第二D触发器的Q输出端与复位信号作为第三或非门的两个输入端,第三或非门的输出接第三D触发器的R端,第一D触发器的Q输出端经第七非门取反后接至第三D触发器的CLK端,第三D触发器的D端加工作电压(VDD),第三D触发器的Q输出端经第五非门取反、复位信号及第一D触发器的Q输出端做为第一三输入或非门的三个输入端,第一三输入或非门输出接启动或停止信号。前述D触发器采用的全部是上升沿触发的结构,而如果采用了下降沿触发结构,D触发器的时钟端要相应的经过一级反向。
本发明I2C总线启动与停止电路结构通过SCK对第一D触发器的复位端R的控制,在检测到启动信号后,只有SCK从高变低时,第一D触发器的Q端才跳0,第三D触发器的Q端跳1,S/P跳1,总线启动。
同时,本发明的I2C总线启动与停止电路结构在检测到停止信号时,通过SCK对第二D触发器输入信号D的控制实现总线停止,即在SCK为高电平期间,D恒定为1,使得第三触发器的复位信号恒定有效,S/P保持为0,总线停止。
附图说明
图1为现有技术中I2C总线启动与停止时序原理图;
图2a为本发明一较佳实施方式中I2C总线启动与停止电路图;
图2b为本发明另一较佳实施方式中I2C总线启动与停止电路图;
图3为本发明一较佳实施方式中I2C总线启动与停止电路中总线启动模块的电路图;
图4为本发明一较佳实施例方式I2C总线启动与停止电路中总线停止模块的电路图;
图5为本发明一较佳实施例方式I2C总线启动与停止电路启动和停止的实现结果原理图;
图6为本发明一优选实施例的电路图。
具体实施方式
参阅图2a-2b,作为本发明的优选实施方式,该I2C总线启动与停止电路结构,它包括总线启动模块和总线停止模块,所述总线启动模块包括第一二输入与非门,第一三输入或非门,第一、第二、第三、第五、第七,第八非门以及第一、第二D触发器,所述总线停止模块包括第二、第三、第四二输入或非门,第四、第五、第六非门以及第二、第三D触发器;
该I2C总线启动与停止电路通过SCK对第一D触发器的复位端R的控制,在第一D触发器检测到启动信号后,只有SCK从高变低时,第一D触发器的Q端才跳0,第三D触发器的Q端跳1,S/P跳1,总线启动;通过SCK对第二D触发器输入信号D的控制,在SCK为高电平期间,D恒定为1,在停止信号到来时,使得第三触发器的复位信号恒定有效,S/P保持为0,总线停止。
进一步的讲,参阅图3,当时钟总线SCK保持为高电平期间,数据总线SDA由高电平跳变为低电平,而时钟总线仍为高电平时,启动标志位并不立刻有效,等待时钟总线由高电平跳为低时,总线才启动数据的传输。其中rst为上电复位信号,SCK为时钟总线,SDA为数据总线。通过SCK对第一D触发器的复位端R的控制,只有SCK从高变低时,第一D触发器的Q端才跳0,第三D触发器的Q端跳1,S/P跳1,总线启动。
参阅图4,在时钟总线SCK保持为高电平期间,检测到数据总线SDA由低电平跳变为高电平,通过D触发器的锁存,停止标志位有效,此时数据总线SDA再次由高电平跳变为低电平,也不会重新启动。其中rst为上电复位信号,rst1为与启动相关的复位信号,启动后为0,SCK为时钟总线,SDA为数据总线。通过SCK对第二D触发器的输入信号D的控制,在SCK为高电平期间,D恒定为1,使得第三D触发器的复位信号恒定有效,S/P保持为0,总线停止。
参阅图5系该I2C总线启动与停止电路整体的实现结果,包括正常的启动的与停止,可以看到,在检测到启动与停止信号时,数据线上的脉冲不会影响电路的正常启动与停止。
本发明基于I2C总线的协议,在正确实现I2C总线数据传输基础上,保证I2C总线启动时不会因为数据线上的错误跳变或干扰影响正常启动且停止后不会因数据线上的错误跳变或干扰重新启动。在所有使用I2C总线传输协议的集成电路中都可以使用上述的启动与停止电路结构。总线在输入端口最好经过schimitt触发器的整形,消除不必要的干扰。
以下结合一较佳实施例及附图对本发明的技术方案作进一步的说明。
该I2C总线启动与停止电路系应用在基于I2C协议的数据监视采集系列芯片中,其整体结构参阅图6,
本实施例由一集成电路及少量外围器件组成。该实例内置I2C协议接口,通过I2C协议与MCU通讯,信号可双向传输。SDA作为2线制串行接口的数据线,内置上拉开漏模式。SCK作为2线制串行接口的时钟线,内置上拉电阻。MCU通过SCK与SDA将指令传输给控制器,而控制器在接收到MCU指令后可将响应信号传输给MCU。
以上仅是本发明的具体应用范例,对本发明的保护范围不构成任何限制。凡采用等同变换或者等效替换而形成的技术方案,均落在本发明权利保护范围之。
Claims (5)
1.一种I2C总线启动与停止电路结构,其特征在于,它包括总线启动模块和总线停止模块;
所述总线启动模块包括第一二输入与非门,第一三输入或非门,第一、第二、第三、第五、第七,第八非门以及第一、第二D触发器;
所述总线停止模块包括第二、第三、第四二输入或非门,第四、第五、第六非门以及第二、第三D触发器;
其中,复位信号经第一非门取反后与SCK信号作为第一二输入或非门的两个输入信号,第一二输入或非门的输出经第二非门取反后接第一D触发器的R端,SDA经第三非门取反后接第一D触发器的CLK,第一D触发器的D端加工作电压(VDD),第一D触发器的Q输出端经第六非门取反后加至第二D触发器的R端,第二D触发器的Q输出端与SCK信号作为第二二输入或非门的两个输入端,第二二输入或非门的输出经第四非门后接至第二D触发器的D端,第二D触发器的Q输出端与复位信号作为第三二输入或非门的两个输入端,第三二输入或非门的输出接第三D触发器的R端,第一D触发器的Q输出端经第七非门取反后接至第三D触发器的CLK端,第三D触发器的D端加工作电压(VDD),第三D触发器的Q端经第五非门取反,复位信号与第一D触发器的Q端做为第一三输入或非门的三个输入端,该三输入或非门输出接启动或停止信号。
2.根据权利要求1所述的I2C总线启动与停止电路结构,其特征在于:
检测到启动信号后,只有当SCK从高变低时,第一D触发器的Q端才跳0,第三D触发器的Q端跳1,S/P跳1,总线启动;
而检测到停止信号后,在SCK为高电平期间,SCK对第二D触发器输入信号恒定为1,使得第三触发器的复位信号恒定有效,S/P保持为0,总线停止。
3.根据权利要求1所述的I2C总线启动与停止电路结构,其特征在于:所述I2C总线启动停止电路结构还包括第六、第七非门;第一触发器的Q经第六非门取反后接第二D触发器的R端,第一触发器的Q经第七非门取反后接第三D触发器的CLK端。
4.根据权利要求1所述的I2C总线启动与停止电路结构,其特征在于:所述D触发器均采用上升沿触发的结构。
5.根据权利要求1所述的I2C总线启动与停止电路结构,其特征在于:所述D触发器均采用下降沿触发结构,但D触发器的时钟端相应的经过一级反向。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110437009.5A CN102622325B (zh) | 2011-12-23 | 2011-12-23 | I2c总线启动与停止电路结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110437009.5A CN102622325B (zh) | 2011-12-23 | 2011-12-23 | I2c总线启动与停止电路结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102622325A true CN102622325A (zh) | 2012-08-01 |
CN102622325B CN102622325B (zh) | 2014-12-24 |
Family
ID=46562249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110437009.5A Active CN102622325B (zh) | 2011-12-23 | 2011-12-23 | I2c总线启动与停止电路结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102622325B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107077448A (zh) * | 2014-10-29 | 2017-08-18 | 高通股份有限公司 | 用于多模总线的同时边缘翻转免疫电路 |
CN107533533A (zh) * | 2015-04-28 | 2018-01-02 | 北欧半导体公司 | 集成电路之间的通信 |
CN111837363A (zh) * | 2018-03-12 | 2020-10-27 | 罗伯特·博世有限公司 | 用于总线系统的发送/接收装置和其运行方法 |
CN117215983A (zh) * | 2023-11-09 | 2023-12-12 | 辉芒微电子(深圳)股份有限公司 | I2c接口规避错误起始和停止条件的电路结构及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6530029B1 (en) * | 1999-09-23 | 2003-03-04 | National Semiconductor Corporation | I2C/SMBus start-stop detecting circuit that reduces the likelihood of stalling the bus due to glitches on the data line |
CN101089838A (zh) * | 2007-07-28 | 2007-12-19 | 中兴通讯股份有限公司 | 一种实现i2c读写时序的方法 |
CN101371234A (zh) * | 2006-01-30 | 2009-02-18 | 汤姆森特许公司 | 具有可中断时钟的数据总线接口 |
CN202600693U (zh) * | 2011-12-23 | 2012-12-12 | 苏州华芯微电子股份有限公司 | I2c总线启动与停止电路结构 |
-
2011
- 2011-12-23 CN CN201110437009.5A patent/CN102622325B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6530029B1 (en) * | 1999-09-23 | 2003-03-04 | National Semiconductor Corporation | I2C/SMBus start-stop detecting circuit that reduces the likelihood of stalling the bus due to glitches on the data line |
CN101371234A (zh) * | 2006-01-30 | 2009-02-18 | 汤姆森特许公司 | 具有可中断时钟的数据总线接口 |
CN101089838A (zh) * | 2007-07-28 | 2007-12-19 | 中兴通讯股份有限公司 | 一种实现i2c读写时序的方法 |
CN202600693U (zh) * | 2011-12-23 | 2012-12-12 | 苏州华芯微电子股份有限公司 | I2c总线启动与停止电路结构 |
Non-Patent Citations (1)
Title |
---|
田军等: "基于ARM和I2C总线的嵌入式PLC设计", 《电气自动化》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107077448A (zh) * | 2014-10-29 | 2017-08-18 | 高通股份有限公司 | 用于多模总线的同时边缘翻转免疫电路 |
CN107533533A (zh) * | 2015-04-28 | 2018-01-02 | 北欧半导体公司 | 集成电路之间的通信 |
CN107533533B (zh) * | 2015-04-28 | 2021-07-16 | 北欧半导体公司 | 集成电路之间的通信 |
CN111837363A (zh) * | 2018-03-12 | 2020-10-27 | 罗伯特·博世有限公司 | 用于总线系统的发送/接收装置和其运行方法 |
CN111837363B (zh) * | 2018-03-12 | 2022-03-11 | 罗伯特·博世有限公司 | 用于总线系统的发送/接收装置和其运行方法 |
US11546188B2 (en) | 2018-03-12 | 2023-01-03 | Robert Bosch Gmbh | Transceiver device for a bus system and operating method therefor |
CN117215983A (zh) * | 2023-11-09 | 2023-12-12 | 辉芒微电子(深圳)股份有限公司 | I2c接口规避错误起始和停止条件的电路结构及方法 |
CN117215983B (zh) * | 2023-11-09 | 2024-03-22 | 辉芒微电子(深圳)股份有限公司 | I2c接口规避错误起始和停止条件的电路结构及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102622325B (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8793425B2 (en) | USB device and detection method thereof | |
EP3537307A1 (en) | Method for handling i2c bus deadlock, electronic device, and communication system | |
US20150103845A1 (en) | Synchronization time-division multiplexing bus communication method adopting serial communication interface | |
US8103896B2 (en) | Method and system for I2C clock generation | |
US20120246366A1 (en) | Serial port remote control circuit | |
US10936524B2 (en) | Bus system with slave devices | |
EP2867745A1 (en) | A low power universal serial bus | |
WO2016126466A1 (en) | Receive clock calibration for a serial bus | |
EP2867780A1 (en) | Device disconnect detection | |
CN100480923C (zh) | I2c总线从控制器软实现方法 | |
CN105573948B (zh) | 由主从式电路进行的芯片同步 | |
CN102622325A (zh) | I2c总线启动与停止电路结构 | |
CN102163184A (zh) | 一种基于专用多芯片串行互连接口的主从传输系统及方法 | |
KR102554978B1 (ko) | 통신 장치, 통신 방법, 프로그램, 및, 통신 시스템 | |
CN102445981B (zh) | 数据传输系统以及数据传输方法 | |
SG189197A1 (en) | Electronic device and serial data communication method | |
CN202600693U (zh) | I2c总线启动与停止电路结构 | |
CN103064477B (zh) | 一种服务器主板设计方法 | |
CN108563598A (zh) | 一种自唤醒的i2c通讯架构系统 | |
US9898358B2 (en) | Error response circuit, semiconductor integrated circuit, and data transfer control method | |
CN112953221B (zh) | 一种电压转换装置 | |
JP2009205377A (ja) | リセット制御を有する集積回路装置 | |
CN104242901A (zh) | 单io口同时实现输入输出功能的装置及其实现方法 | |
CN104486183B (zh) | 一种收发自控制的三态rs485通讯方法 | |
RU123272U1 (ru) | Универсальный конвертер интерфейсов |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |