CN111274188A - 一种多数据i2c总线 - Google Patents
一种多数据i2c总线 Download PDFInfo
- Publication number
- CN111274188A CN111274188A CN202010103761.5A CN202010103761A CN111274188A CN 111274188 A CN111274188 A CN 111274188A CN 202010103761 A CN202010103761 A CN 202010103761A CN 111274188 A CN111274188 A CN 111274188A
- Authority
- CN
- China
- Prior art keywords
- data line
- data
- line
- bus
- bits
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种多数据线I2C总线,所述I2C总线包括:用于反映系统时钟信号的SCLK线;与所述SCLK线进行数据交换的数据线,所述数据线设置有多个,且所述数据线用于根据所述SCLK线上的信息反馈ACK信号。本发明中通过设置多根数据线,用于根据所述SCLK线上的信息反馈ACK信号,相对于原有的I2C总线,提高了传输速率。
Description
技术领域
本发明涉及嵌入式驱动技术领域,尤其涉及的是一种多数据I2C总线。
背景技术
I2C通讯协议(Inter-Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。在I2C通讯协议中包括有起始信号和停止信号。其中,起始信号为当SCLK线是高电平时SDA线从高电平向低电平切换。停止信号为当SCLK线是高电平时SDA线由低电平向高电平切换。具体如图1所示,SCLK是时钟信号,SDA是唯一的数据线。因为就一根数据线,I2C传输的速率(bps比特每秒钟)直接等于时钟频率-I2C协议的负荷消耗。I2C的时钟频率最快就400KHZ,所以I2C的速率就在400kbps以下,严重影响了I2C总线的传输效率。
因此,现有技术还有待改进和发展。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种多数据I2C总线,旨在解决现有技术中的I2C总线传输效率低的问题。
本发明解决问题所采用的技术方案如下:
本发明实施例提供一种多数据线I2C总线,其中,所述I2C总线包括:用于反映系统时钟信号的SCLK线;与所述SCLK线进行数据交换的数据线,所述数据线设置有多个,且所述数据线用于根据所述SCLK线上的信息反馈ACK信号。
在一种实施方式中,所述SCLK线上存储设备地址、寄存器地址以及寄存器数值,且所述SCLK线用于将所述设备地址、所述寄存器地址以及所述寄存器数值向所述数据线传输。
在一种实施方式中,所述的数据线设置两根或者设置有四根。
在一种实施方式中,当所述数据线设置为两根时,包括第一数据线以及第二数据线;且所述第一数据线为主数据线。
在一种实施方式中,所述SCLK线传输的寄存器地址为16bit,其中,所述第一数据线的寄存器地址为低八位,所述第二数据线的寄存器地址为高八位。
在一种实施方式中,所述SCLK线传输的寄存器数值为16bit,其中,所述第一数据线的寄存器数值为低八位,所述第二数据线的寄存器数值为高八位。
在一种实施方式中,当所述数据线设置有4根时,包括:第一数据线、第二数据线、第三数据线以及第四数据线,且所述第一数据线为主数据线。
在一种实施方式中,所述SCLK线传输的寄存器地址为32bit,其中,所述第一数据线的寄存器地址为最低八位,所述第二数据线的寄存器地址为次低八位,所述第三数据线的寄存器地址为次高八位,所述第四数据线的寄存器地址为最高八位。
在一种实施方式中,所述SCLK线传输的寄存器数值为32bit,其中,所述第一数据线的寄存器数值为最低八位,所述第二数据线的寄存器数值为次低八位,所述第三数据线的寄存器数值为次高八位,所述第四数据线的寄存器数值为最高八位。
在一种实施方式中,当结束所述I2C总线后,所述第二数据线、所述第三数据线以及所述第四数据线进入高阻态。
本发明的有益效果:本发明中通过设置多根数据线,用于根据所述SCLK线上的信息反馈ACK信号,由于有多根数据线的存在,因此在传输速率上更加快,相对于原有的I2C总线,提高了传输速率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术提供的I2C总线的示意图。
图2是本发明实施例提供的的多数据I2C总线的第一实施例的示意图。
图3是本发明实施例提供的的多数据I2C总线的第二实施例的示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明,若本发明实施例中有涉及方向性指示(诸如上、下、左、右、前、后……),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
为了解决现有技术的问题,本实施例提供一种多数据线I2C总线,其中,所述I2C总线包括:用于反映系统时钟信号的SCLK线;与所述SCLK线进行数据交换的数据线,所述数据线设置有多个,且所述数据线用于根据所述SCLK线上的信息反馈ACK信号。在本发明中,由于增加了数据线,相对于传统的I2C总线中,只存在一个数据线的情况,本发明可以明显提高传输速率,并且该传输速率根据所述数据线的数量也会对应地呈倍数增加。例如,图2中设置有两根数据线,相对于传统的I2C总线中只存在一根数据线的情况(如图1中所示),图2中的数据线的数量是图1中数据线数量的两倍,因此图2中的多数据I2C总线的传输速率是图1中的I2C总线的传输速率的2倍。图3中设置有四根数据线,相对于传统的I2C总线中只存在一根数据线的情况(如图1中所示),图3中的数据线的数量是图1中数据线数量的四倍,因此图3中的多数据I2C总线的传输速率是图1中的I2C总线的传输速率的4倍。
I2C总线由数据线SDA和SCLK线(时钟信号线)构成串行总线,可发送和接收数据。在CPU与被控IC(Integrated Circuit集成电路芯片)之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。I2C总线在传送数据过程中共有三种类型信号,它们分别是:开始信号、结束信号和应答信号。其中,开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。
在本实施例中,如图2和图3中所示,CLK线上存储设备地址、寄存器地址以及寄存器数值,并且所述SCLK线用于将所述设备地址、所述寄存器地址以及所述寄存器数值向所述数据线传输,也就是说,所述SCLK线与所述数据线是会进行数据传输的,所述SCLK线上的设备地址、所述寄存器地址以及所述寄存器数值向所述的数据线进行传输,且所述数据线会根据接受到的信息反馈ACK信号。每个字节后会跟随一个ACK信号。ACK bit使得接收者通知发送者已经成功接收数据并准备接收下一个数据。所有的时钟脉冲包括ACK信号对应的时钟脉冲都是由master产生的。
具体地,本实施例中的数据线设置两根或者设置有四根。当所述数据线设置成两个根时,如图2中所示;当所述数据线设置成四根时,所述多数据I2C总线如图3中所示。
在一种实施方式中,当所述数据线设置为两根时,包括第一数据线以及第二数据线;分别命名所述第一数据线为SDA0,第二数据线为SDA1,并且本实施例中的所述第一数据线SDA0为主数据线。当在第一数据线SDA0输入完设备地址后,ACK信号从第一SDA0数据线上得到反馈。
进一步地,在本实施例中,所述SCLK线传输寄存器地址为16bit,其中,所述第一数据线SDA0的寄存器地址为低八位,所述第二数据线SDA1的寄存器地址为高八位。当所述第一数据线SDA0和第二数据线SDA1传输完寄存器地址后,ACK信号从第一数据线SDA0上得到反馈。
进一步地,所述SCLK线传输寄存器数值为16bit,其中,所述第一数据线SDA0的寄存器数值为低八位,所述第二数据线SDA1的寄存器数值为高八位。在第一数据线SDA0和第二数据线SDA1传输完寄存器数值后,ACK信号从第一数据线SDA0上得到反馈。可见。本实施例中设置有两根数据线,相对于传统的I2C总线中只存在一根数据线的情况(如图1中所示),图2中的数据线的数量是图1中数据线数量的两倍,因此图2中的多数据I2C总线的传输速率是图1中的I2C总线的传输速率的2倍。
在另一种实施方式中,当所述数据线设置有4根时,如图3中所示,包括:第一数据线SDA0、第二数据线SDA1、第三数据线SDA2以及第四数据线SDA3,且所述第一数据线SDA0为主数据线。同样地,当在第一数据线SDA0输入完设备地址后,ACK信号从第一数据线SDA0上得到反馈。
进一步地,所述SCLK线传输寄存器地址为32bit,其中,所述第一数据线SDA0的寄存器地址为最低八位,所述第二数据线SDA1的寄存器地址为次低八位,所述第三数据线SDA3的寄存器地址为次高八位,所述第四数据线SDA3的寄存器地址为最高八位。在第一数据线SDA0和第二数据线SDA1传输完寄存器地址后,ACK信号从第一数据线SDA0上得到反馈。
进一步地,所述SCLK线传输寄存器数值为32bit,其中,所述第一数据线SDA0的寄存器数值为最低八位,所述第二数据线SDA1的寄存器数值为次低八位,所述第三数据线SDA2的寄存器数值为次高八位,所述第四数据线SDA3的寄存器数值为最高八位。在第一数据线SDA0和第二数据线SDA1传输完寄存器地址后,ACK信号从第一数据线SDA0上得到反馈。
进一步地,当结束所述I2C总线后,所述第二数据线SDA1、所述第三数据线SDA2以及所述第四数据线SDA3进入高阻态。优选地,本实施例中,当将所述第三数据线SDA2以及第四数据线SDA3一直设置为高阻态不输出任何电平,也不获取任何输入信息,就可以得到图2中只有两根数据线的情况。由于本实施例中设置有四根数据线,相对于传统的I2C总线中只存在一根数据线的情况(如图1中所示),图3中的数据线的数量是图1中数据线数量的四倍,因此图3中的多数据I2C总线的传输速率是图1中的I2C总线的传输速率的4倍。
综上所述,本发明公开了一种多数据线I2C总线,所述I2C总线包括:用于反映系统时钟信号的SCLK线;与所述SCLK线进行数据交换的数据线,所述数据线设置有多个,且所述数据线用于根据所述SCLK线上的信息反馈ACK信号。本发明中通过设置多根数据线,用于根据所述SCLK线上的信息反馈ACK信号,相对于原有的I2C总线,提高了传输速率。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种多数据线I2C总线,其特征在于,所述I2C总线包括:用于反映系统时钟信号的SCLK线;与所述SCLK线进行数据交换的数据线,所述数据线设置有多个,且所述数据线用于根据所述SCLK线上的信息反馈ACK信号。
2.根据权利要求1所述的多数据I2C总线,其特征在于,所述SCLK线上存储设备地址、寄存器地址以及寄存器数值,且所述SCLK线用于将所述设备地址、所述寄存器地址以及所述寄存器数值向所述数据线传输。
3.根据权利要求1所述的多数据I2C总线,其特征在于,所述的数据线设置两根或者设置有四根。
4.根据权利要求3所述的多数据I2C总线,其特征在于,当所述数据线设置为两根时,包括第一数据线以及第二数据线;且所述第一数据线为主数据线。
5.根据权利要求4所述的多数据I2C总线,其特征在于,所述SCLK线传输的寄存器地址为16bit,其中,所述第一数据线的寄存器地址为低八位,所述第二数据线的寄存器地址为高八位。
6.根据权利要求4所述的多数据I2C总线,其特征在于,所述SCLK线传输的寄存器数值为16bit,其中,所述第一数据线的寄存器数值为低八位,所述第二数据线的寄存器数值为高八位。
7.根据权利要求3所述的多数据I2C总线,其特征在于,当所述数据线设置有4根时,包括:第一数据线、第二数据线、第三数据线以及第四数据线,且所述第一数据线为主数据线。
8.根据权利要求7所述的多数据I2C总线,其特征在于,所述SCLK线传输的寄存器地址为32bit,其中,所述第一数据线的寄存器地址为最低八位,所述第二数据线的寄存器地址为次低八位,所述第三数据线的寄存器地址为次高八位,所述第四数据线的寄存器地址为最高八位。
9.根据权利要求8所述的多数据I2C总线,其特征在于,所述SCLK线传输的寄存器数值为32bit,其中,所述第一数据线的寄存器数值为最低八位,所述第二数据线的寄存器数值为次低八位,所述第三数据线的寄存器数值为次高八位,所述第四数据线的寄存器数值为最高八位。
10.根据权利要求9所述的多数据I2C总线,其特征在于,当结束所述I2C总线后,所述第二数据线、所述第三数据线以及所述第四数据线进入高阻态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010103761.5A CN111274188A (zh) | 2020-02-20 | 2020-02-20 | 一种多数据i2c总线 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010103761.5A CN111274188A (zh) | 2020-02-20 | 2020-02-20 | 一种多数据i2c总线 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111274188A true CN111274188A (zh) | 2020-06-12 |
Family
ID=70997227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010103761.5A Pending CN111274188A (zh) | 2020-02-20 | 2020-02-20 | 一种多数据i2c总线 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274188A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1664797A (zh) * | 2004-03-02 | 2005-09-07 | 三洋电机株式会社 | 数据传送存储器及模块 |
CN101398801A (zh) * | 2008-10-17 | 2009-04-01 | 北京星网锐捷网络技术有限公司 | 扩展内部集成电路总线的方法及装置 |
CN102023953A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的系统的控制方法 |
CN102073611A (zh) * | 2011-02-16 | 2011-05-25 | 东莞市泰斗微电子科技有限公司 | 一种i2c总线控制系统及方法 |
CN102163180A (zh) * | 2011-01-20 | 2011-08-24 | 电子科技大学 | 一种i2c总线接口电路模块及其控制方法 |
CN103593316A (zh) * | 2013-11-25 | 2014-02-19 | 深圳市共进电子股份有限公司 | 一种减少mcu中断占用i2c总线时间的方法 |
CN105302484A (zh) * | 2015-10-19 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 批量读取以太网卡光模块中数字诊断信息的装置及方法 |
CN106844271A (zh) * | 2017-03-13 | 2017-06-13 | 郑州云海信息技术有限公司 | 一种系统验证平台及方法 |
-
2020
- 2020-02-20 CN CN202010103761.5A patent/CN111274188A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1664797A (zh) * | 2004-03-02 | 2005-09-07 | 三洋电机株式会社 | 数据传送存储器及模块 |
CN101398801A (zh) * | 2008-10-17 | 2009-04-01 | 北京星网锐捷网络技术有限公司 | 扩展内部集成电路总线的方法及装置 |
CN102023953A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的系统的控制方法 |
CN102163180A (zh) * | 2011-01-20 | 2011-08-24 | 电子科技大学 | 一种i2c总线接口电路模块及其控制方法 |
CN102073611A (zh) * | 2011-02-16 | 2011-05-25 | 东莞市泰斗微电子科技有限公司 | 一种i2c总线控制系统及方法 |
CN103593316A (zh) * | 2013-11-25 | 2014-02-19 | 深圳市共进电子股份有限公司 | 一种减少mcu中断占用i2c总线时间的方法 |
CN105302484A (zh) * | 2015-10-19 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 批量读取以太网卡光模块中数字诊断信息的装置及方法 |
CN106844271A (zh) * | 2017-03-13 | 2017-06-13 | 郑州云海信息技术有限公司 | 一种系统验证平台及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8694710B2 (en) | Conversion of a two-wire bus into a single-wire bus | |
US7111097B2 (en) | One wire serial communication protocol method and circuit | |
KR100439640B1 (ko) | 옵션 기기의 제어 방법 | |
EP0522764B1 (en) | Multiplexing scheme for modem control signals | |
US8266360B2 (en) | I2C-bus interface with parallel operational mode | |
CN105302484B (zh) | 批量读取以太网卡光模块中数字诊断信息的装置及方法 | |
KR20030033040A (ko) | 인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법 | |
US20070088874A1 (en) | Offload engine as processor peripheral | |
US20100064083A1 (en) | Communications device without passive pullup components | |
CN112269749B (zh) | I2c通信系统 | |
WO2007030978A1 (fr) | Procede, appareil de reinitialisation et equipement pour effectuer la reinitialisation d'un dispositif maitre dans un bus i2c | |
US6931468B2 (en) | Method and apparatus for addressing multiple devices simultaneously over a data bus | |
US6874050B2 (en) | Circuit and method for expanding a serial bus | |
US6215817B1 (en) | Serial interface device | |
CN113259205A (zh) | 一种多板卡系统内部互联接口测试方法及系统 | |
CN111274188A (zh) | 一种多数据i2c总线 | |
CN216873219U (zh) | 通信电路及多主通信系统 | |
CN111913904B (zh) | 向利用主从通信协议的多个从属装置自动分配互不相同地址的方法及用于其的装置 | |
CN114911743A (zh) | Spi从机设备、spi主机设备和相关的通信方法 | |
CN210270888U (zh) | 一种单总线通信电路 | |
CN112506839A (zh) | 一种一对多spi总线切换方法及装置 | |
KR20100135642A (ko) | 타이밍 제어기, 이를 이용하여 데이터를 송수신하는 장치 | |
CN112486887B (zh) | 一种利用spi总线传输异步信号的方法及装置 | |
CN114968898A (zh) | 一种实现芯片通讯的控制电路和方法 | |
CN114996184B (zh) | 兼容实现spi或i2c从机的接口模块及数据传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200612 |
|
RJ01 | Rejection of invention patent application after publication |