CN109213718A - 一种i2c通信装置及i2c通信设备 - Google Patents
一种i2c通信装置及i2c通信设备 Download PDFInfo
- Publication number
- CN109213718A CN109213718A CN201811338272.7A CN201811338272A CN109213718A CN 109213718 A CN109213718 A CN 109213718A CN 201811338272 A CN201811338272 A CN 201811338272A CN 109213718 A CN109213718 A CN 109213718A
- Authority
- CN
- China
- Prior art keywords
- port
- address
- trigger
- clock
- count value
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 79
- 238000004891 communication Methods 0.000 title claims abstract description 76
- 238000012546 transfer Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 19
- 238000000034 method Methods 0.000 description 12
- 230000000630 rising effect Effects 0.000 description 10
- 102100038026 DNA fragmentation factor subunit alpha Human genes 0.000 description 9
- 101000950906 Homo sapiens DNA fragmentation factor subunit alpha Proteins 0.000 description 9
- 102100038023 DNA fragmentation factor subunit beta Human genes 0.000 description 8
- 101100277639 Homo sapiens DFFB gene Proteins 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 2
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101100328518 Caenorhabditis elegans cnt-1 gene Proteins 0.000 description 1
- 208000033748 Device issues Diseases 0.000 description 1
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 1
- 102100040856 Dual specificity protein kinase CLK3 Human genes 0.000 description 1
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 1
- 101000749304 Homo sapiens Dual specificity protein kinase CLK3 Proteins 0.000 description 1
- 101150044602 Slc28a2 gene Proteins 0.000 description 1
- 101150090324 Slc28a3 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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
- 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/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/404—Coupling between buses using bus bridges with address mapping
-
- 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)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种I2C通信装置及I2C通信设备,包括:地址端口、串行数据端口、时钟端口、电源端口、接地端口、异步计数器和地址编码器;串行数据端口与I2C总线中的串行数据线连接,时钟端口与I2C总线中的串行时钟线连接;异步计数器用于依据信号指令生成第一计数值、第二计数值和第三计数值,信号指令为地址端口的输出信号;地址编码器用于依据信号指令、第一计数值、第二计数值和第三计数值生成地址编码,且当地址端口分别与串行数据端口、时钟端口、电源端口和接地端口连接时,地址编码器生成的地址编码各不相同,从而可以在增加一个端口的情况下,实现四个I2C地址的扩展。
Description
技术领域
本发明涉及数据通信技术领域,更具体地说,涉及一种I2C通信装置及I2C通信设备。
背景技术
I2C总线是一种简单的双向二线制同步串行总线,被广泛应用于微控制器与多外围设备之间的数据通信。I2C通信系统通常由主设备、I2C从设备和I2C总线组成。其中,I2C总线由串行数据线和串行时钟线构成。
I2C通信系统中主设备用于启动I2C总线传输数据,并产生时钟以开放传送的器件,此时任何被寻址的器件均认为是从设备。在I2C总线上主和从、发和收的关系不是恒定的,而是取决于此时数据传输方向。如果主设备要发送数据给从设备,则主设备首先寻址从设备,然后主动发送数据至送设备,最后由主设备终止数据传输;如果主设备要接收从设备的数据,首先由主设备寻址从设备,然后主设备接收从设备发送的数据,最后由主设备终止接收过程。因此为了保证通信,每个接收到I2C总线的设备都有一个唯一的地址,以便于主设备访问。
由于每个接到I2C总线上的设备都需要一个唯一的设备地址,因此就需要给每一个设备的I2C通信接口设定不同的地址,这显然对于设计和生产都比较繁琐。为了让I2C总线挂载更多的设备,常用的做法是对设备的地址进行扩展。
但是,目前对设备I2C地址的扩展能力有限,还是无法满足市场需求。
发明内容
有鉴于此,为解决上述问题,本发明提供了一种I2C通信装置及I2C通信设备,技术方案如下:
一种I2C通信装置,所述I2C通信装置包括:地址端口、串行数据端口、时钟端口、电源端口、接地端口、异步计数器和地址编码器;所述串行数据端口与I2C总线中的串行数据线连接,所述时钟端口与所述I2C总线中的串行时钟线连接;
所述异步计数器用于依据信号指令生成第一计数值、第二计数值和第三计数值,所述信号指令为所述地址端口的输出信号;
所述地址编码器用于依据所述信号指令、所述第一计数值、所述第二计数值和所述第三计数值生成地址编码,且当所述地址端口分别与所述串行数据端口、所述时钟端口、所述电源端口和所述接地端口连接时,所述地址编码器生成的地址编码各不相同。
优选的,所述异步计数器为3bit异步计数器。
优选的,所述异步计数器包括:第一触发器、第二触发器和第三触发器;
所述第一触发器的时钟输入端与所述地址端口连接,所述第一触发器的输出端分别与所述地址编码器的输入端和所述第二触发器的时钟输入端连接,所述第二触发器的输出端分别与所述地址编码器的输入端和所述第三触发器的时钟输入端连接,所述第三触发器的输出端与所述地址编码器的输入端连接;
所述地址编码器的输入端还与所述地址端口连接。
优选的,所述I2C通信装置还包括:复位模块;
所述复位模块用于输出复位信号至所述第一触发器、所述第二触发器和所述第三触发器的复位端,以使所述第一触发器、所述第二触发器和所述第三触发器进行复位。
优选的,所述复位模块的第一输入端与所述串行数据端口连接,所述复位模块的第二输入端与所述时钟端口连接;
所述复位模块依据所述串行数据端口输出的数据信号和所述时钟端口输出的时钟信号获得所述I2C总线数据传输的开始信号,并依据所述开始信号生产所述复位信号。
优选的,所述I2C通信装置还包括:抗尖峰脉冲模块;
所述抗尖峰脉冲模块用于控制所述信号指令的稳定性。
优选的,所述抗尖峰脉冲模块的输入端与所述地址端口连接,所述抗尖峰脉冲模块的输出端分别与所述第一触发器的时钟输入端和所述地址编码器的输入端连接。
一种I2C通信设备,包括上述任一项所述的I2C通信装置。
相较于现有技术,本发明实现的有益效果为:
该I2C通信装置及I2C通信设备,当地址端口分别与串行数据端口、时钟端口、电源端口和接地端口连接时,地址编码器依据信号指令、第一计数值、第二计数值和第三计数值生成的地址编码各不相同。也就是说,I2C通信装置可以生成四个各不相同的地址,从而可以在增加一个端口的情况下,实现四个I2C通信地址的扩展。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的I2C通信的一种时序示意图;
图2为本发明实施例提供的I2C通信的另一时序示意图;
图3为本发明实施例提供的I2C通信的又一时序示意图;
图4为本发明实施例提供的I2C通信装置的一种结构示意图;
图5为本发明实施例提供的I2C通信装置的另一结构示意图;
图6为本发明实施例提供的地址端口与接地端口连接的时序示意图;
图7为本发明实施例提供的地址端口与电源端口连接的时序示意图;
图8为本发明实施例提供的地址端口与时钟端口连接的时序示意图;
图9为本发明实施例提供的地址端口与串行数据端口连接的时序示意图;
图10为本发明实施例提供的I2C通信装置的又一结构示意图;
图11为本发明实施例提供的I2C通信装置的又一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据背景技术中记载的内容可知,I2C通信系统通常由主设备、I2C从设备和I2C总线组成。其中,I2C总线由串行数据线(Serial Data Line,简称SDA)和串行时钟线(SerialClock Line,简称SCL)构成。下面对其一次完整的I2C通信过程进行阐述。
参考图1,图1为本发明实施例提供的I2C通信的一种时序示意图。
第一步,主设备在检测到I2C总线为“空闲状态”(即,SDA和SCL线均为高电平)时,发送一个开始信号Start,即一次I2C通信的开始。
第二步,主设备接着发送一个命令字节,该命令字节由7位的I2C从设备的I2C地址信息和1位读写控制位R/W组成,此时R/W=0,并且通常最低一位就是R/W位,其中,“0”表示写,“1”表示读。
第三步,相对应的I2C从设备收到该命令字节后向主设备回馈应答信号ACK,ACK=0。
第四步,主设备接收到I2C从设备的应答信号ACK后,开始发动第一个字节的数据。
第五步,I2C从设备收到数据后返回一个应答信号ACK。
第六步,主设备接收到应答信号ACK后再发送下一个数据字节。
第七步,当主设备发动最后一个数据字节并收到I2C从设备的应答信号ACK后,通过向I2C从设备发送一个停止信号Stop,结束本次I2C通信并释放I2C总线。I2C从设备接收到停止信号Stop后也退出与主设备之间的通信。
参考图2,图2为本发明实施例提供的I2C通信的另一时序示意图,在I2C通信过程中,当时钟SCL为高电平时,串行数据SDA的电平必须保持稳定。
参考图3,图3为本发明实施例提供的I2C通信的又一时序示意图,当串行数据SDA由高电平向低电平跳变,且时钟SCL为高电平时,表示一次I2C通信的开始;当串行数据SDA由低电平向高电平跳变,且时钟SCL为高电平时,表示一次I2C通信的结束。
在I2C通信过程中,由于每个接到I2C总线上的设备都需要一个唯一的设备地址,因此就需要给每一个设备的I2C通信接口设定不同的地址,这显然对于设计和生产都比较繁琐。为了让I2C总线挂载更多的设备,常用的做法是对设备的地址进行扩展。
但是,目前对设备地址的扩展能力有限,还是无法满足市场需求。
基于此本发明提供了一种I2C通信装置及I2C通信设备,提高了对I2C通信地址的扩展能力。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参考图4,图4为本发明实施例提供的I2C通信装置的一种结构示意图,所述I2C通信装置41包括:地址端口ADDR、串行数据端口SDA、时钟端口SCL、电源端口VCC、接地端口GND、异步计数器42和地址编码器43;所述串行数据端口ADDR与I2C总线中的串行数据线连接,所述时钟端口SCL与所述I2C总线中的串行时钟线连接;
所述异步计数器42用于依据信号指令A生成第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2],所述信号指令A为所述地址端口ADDR的输出信号;
所述地址编码器43用于依据所述信号指令A、所述第一计数值Cnt[0]、所述第二计数值Cnt[1]和所述第三计数值Cnt[2]生成地址编码ID[1]、ID[0],且当所述地址端口ADDR分别与所述串行数据端口SDA、所述时钟端口SCL、所述电源端口VCC和所述接地端口GND连接时,所述地址编码器43生成的地址编码ID[1]、ID[0]各不相同。
在该实施例中,该I2C通信装置41,当地址端口ADDR分别与串行数据端口SDA、时钟端口SCL、电源端口VCC和接地端口GND连接时,地址编码器43依据信号指令A、第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2]生成的地址编码ID[1]、ID[0]各不相同。也就是说,I2C通信装置41可以生成四个各不相同的地址,从而可以在增加一个端口的情况下,实现四个I2C通信地址的扩展。
进一步的,当设置N个地址端口时,同步复制对应的异步计数器和地址编码器,可以实现4N种可选的I2C地址。
可选的,所述异步计数器42为3bit异步计数器。
具体的,由于本发明中只需要计算出I2C通信开始后的前7个时钟SCL周期内地址端口ADDR出现上升沿的次数,该值最大为7,即地址端口ADDR与时钟端口SCL连接时,异步计数器42的计数值最大,为7,因此采用3bit的异步计数器即可满足使用要求。并且,相比较同步计数器而言,采用同步计数器实现功能所需要的逻辑单元会变得更加复杂,因此本发明实施例中采用3bit异步计数器。
进一步的,参考图5,图5为本发明实施例提供的I2C通信装置的另一结构示意图,所述异步计数器42包括:第一触发器DFF1、第二触发器DFF2和第三触发器DFF3;
所述第一触发器DFF1的时钟输入端CLK1与所述地址端口ADDR连接,所述第一触发器DFF1的输出端Q1分别与所述地址编码器43的输入端和所述第二触发器DFF2的时钟输入端CLK2连接,所述第二触发器DFF2的输出端Q2分别与所述地址编码器43的输入端和所述第三触发器DFF3的时钟输入端CLK3连接,所述第三触发器DFF3的输出端Q3与所述地址编码器43的输入端连接;
所述地址编码器43的输入端还与所述地址端口ADDR连接。
在该实施例中,所述地址端口ADDR作为所述异步计数器42的时钟输入端,根据I2C的通信协议可知,当主设备开始进行I2C通信后,主设备会首先依次发送7bit的I2C从设备的I2C地址信息和1bit的读写操作信息。I2C通信开始后,异步计数器42从0开始计数,其特定时刻的计数结果与地址端口ADDR的连接方式相关,如表1所示。
表1为地址端口ADDR不同连接方式下I2C通信装置在时钟SCL的第7个上升沿时对应的真值表,其中,时钟SCL的第7个上升沿相当于I2C开始信号I2C_Start=1。
表1
通过表1可知,地址端口ADDR不同连接方式下可以映射为不同的I2C地址,即ID[1]和ID[0]组成的I2C地址,其中,x表示此连接方式下地址端口ADDR的输出信号可以不作为依据。
该I2C装置在开始信号I2C_Start后的第7个时钟SCL下降沿进行地址匹配判决,如果地址匹配成功,该I2C装置发出应答信号,否则不应答。其中,第7个时钟SCL下降沿表示I2C从设备已经接收到主设备发送的7bit的I2C地址信息,并且还未接收到第8bit的读写信息。
下面对地址端口ADDR的不同连接方式下的原理进行阐述。
参考图6,图6为本发明实施例提供的地址端口与接地端口连接的时序示意图。
当地址端口ADDR连接接地端口GND时,第一触发器DFF1的输出端Q1将保持为0,第二触发器DFF2的输出端Q2和第三触发器DFF3的输出端Q3也保持为0,即第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2]均为0。在时钟SCL的第7个上升沿,[Cnt,ADDR]对应的值为4'b0000,即第一计数值Cnt[0]、第二计数值Cnt[1]、第三计数值Cnt[2]和信号指令A对应的值为4'b0000,此时通过地址编码器43将该值映射为地址编码ID[1:0]=00。在时钟SCL第7个下降沿,进行地址匹配判决,如果地址匹配成功,则将匹配信号Dev_match置1,该I2C装置在第9bit数据将发出应答信号ACK,ACK=0;若地址匹配失败,匹配信号Dev_match置0,该I2C装置将不会发出应答信号ACK,ACK=1。
参考图7,图7为本发明实施例提供的地址端口与电源端口连接的时序示意图。
当地址端口ADDR连接电源端口VCC时,第一触发器DFF1的输出端Q1将保持为0,第二触发器DFF2的输出端Q2和第三触发器DFF3的输出端Q3也保持为0,即第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2]均为0。在时钟SCL的第7个上升沿,[Cnt,ADDR]对应的值为4'b0001,即第一计数值Cnt[0]、第二计数值Cnt[1]、第三计数值Cnt[2]和信号指令A对应的值为4'b0001,此时通过地址编码器43将该值映射为地址编码ID[1:0]=01。在时钟SCL第7个下降沿,进行地址匹配判决,如果地址匹配成功,则将匹配信号Dev_match置1,该I2C装置在第9bit数据将发出应答信号ACK,ACK=0;若地址匹配失败,匹配信号Dev_match置0,该I2C装置将不会发出应答信号ACK,ACK=1。
参考图8,图8为本发明实施例提供的地址端口与时钟端口连接的时序示意图。
当地址端口ADDR连接时钟端口SCL时,3bit异步计数器会在时钟SCL的每个上升沿加1,那么在时钟SCL的第7个上升沿,Cnt[2:0]的值变为3'b111,Cnt[2:0]表示Cnt1、Cnt2和Cnt3,即第一触发器DFF1的输出端Q1、第二触发器DFF2的输出端Q2和第三触发器DFF3的输出端Q3均保持为1,即第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2]均为1,[Cnt,ADDR]对应的值为4'b111x,即第一计数值Cnt[0]、第二计数值Cnt[1]、第三计数值Cnt[2]和信号指令A对应的值为4'b111x,此时通过地址编码器43将该值映射为地址编码ID[1:0]=11。在时钟SCL第7个下降沿,进行地址匹配判决,如果地址匹配成功,则将匹配信号Dev_match置1,该I2C装置在第9bit数据将发出应答信号ACK,ACK=0;若地址匹配失败,匹配信号Dev_match置0,该I2C装置将不会发出应答信号ACK,ACK=1。
参考图9,图9为本发明实施例提供的地址端口与串行数据端口连接的时序示意图。
当地址端口ADDR连接串行数据端口SDA时,3bit异步计数器会在时钟SCL的每个上升沿加1,通常而言,I2C从设备的I2C地址不全为0,因此在时钟SCL的第7个上升沿,Cnt[2:0]的值应大于等于3'b001,[Cnt,ADDR]对应的值为4'b001x,即第一计数值Cnt[0]、第二计数值Cnt[1]、第三计数值Cnt[2]和信号指令A对应的值为4'b001x。
当I2C地址为1010101时,在时钟SCL的第7个上升沿时时钟SCL的上升沿计数值达到最大,此时Cnt[2:0]的最大值为3'b100,[Cnt,ADDR]对应的值为4'b100x,即第一计数值Cnt[0]、第二计数值Cnt[1]、第三计数值Cnt[2]和信号指令A对应的值为4'b100x。
也就是说,[Cnt,ADDR]的值在4'b0010-4'b1001之间,此时通过地址编码器43将该值映射为地址编码ID[1:0]=10。在时钟SCL第7个下降沿,进行地址匹配判决,如果地址匹配成功,则将匹配信号Dev_match置1,该I2C装置在第9bit数据将发出应答信号ACK,ACK=0;若地址匹配失败,匹配信号Dev_match置0,该I2C装置将不会发出应答信号ACK,ACK=1。
通过上述描述可知,该I2C通信装置,当地址端口ADDR分别与串行数据端口SDA、时钟端口SCL、电源端口VCC和接地端口GND连接时,地址编码器43依据信号指令A、第一计数值Cnt[0]、第二计数值Cnt[1]和第三计数值Cnt[2]生成的地址编码各不相同。也就是说,I2C通信装置可以生成四个各不相同的地址,从而可以在增加一个端口的情况下,实现四个I2C通信地址的扩展。
进一步的,参考图10,图10为本发明实施例提供的I2C通信装置的又一结构示意图,所述I2C通信装置41还包括:复位模块101;
所述复位模块101用于输出复位信号至所述第一触发器DFF1的复位端R1、所述第二触发器DFF2的复位端R2和所述第三触发器DFF3的复位端R3,以使所述第一触发器DFF1、所述第二触发器DFF2和所述第三触发器DFF3进行复位。
进一步的,所述复位模块101的第一输入端与所述串行数据端口SDA连接,所述复位模块101的第二输入端与所述时钟端口SCL连接;
所述复位模块101依据所述串行数据端口SDA输出的数据信号和所述时钟端口SCL输出的时钟信号获得所述I2C总线数据传输的开始信号I2C_Start,并依据所述开始信号I2C_Start生产所述复位信号。
在该实施例中,将I2C通信的开始信号I2C_Start作为异步计数器42的异步清零信号。
进一步的,参考图11,图11为本发明实施例提供的I2C通信装置的又一结构示意图,所述I2C通信装置41还包括:抗尖峰脉冲模块111;
所述抗尖峰脉冲模块111用于控制所述信号指令A的稳定性。
进一步的,所述抗尖峰脉冲模块111的输入端与所述地址端口ADDR连接,所述抗尖峰脉冲模块111的输出端分别与所述第一触发器DFF1的时钟输入端CLK1和所述地址编码器43的输入端连接。
在该实施例中,通过加入抗尖峰脉冲模块111对地址端口ADDR的输出信号进行抗尖峰脉冲处理,以提高I2C通信装置的稳定性。
基于本发明上述全部实施例,在本发明另一实施例中还提供了一种I2C通信设备,该I2C通信设备包括该I2C通信装置。
以上对本发明所提供的一种I2C通信装置及I2C通信设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种I2C通信装置,其特征在于,所述I2C通信装置包括:地址端口、串行数据端口、时钟端口、电源端口、接地端口、异步计数器和地址编码器;所述串行数据端口与I2C总线中的串行数据线连接,所述时钟端口与所述I2C总线中的串行时钟线连接;
所述异步计数器用于依据信号指令生成第一计数值、第二计数值和第三计数值,所述信号指令为所述地址端口的输出信号;
所述地址编码器用于依据所述信号指令、所述第一计数值、所述第二计数值和所述第三计数值生成地址编码,且当所述地址端口分别与所述串行数据端口、所述时钟端口、所述电源端口和所述接地端口连接时,所述地址编码器生成的地址编码各不相同。
2.根据权利要求1所述的I2C通信装置,其特征在于,所述异步计数器为3bit异步计数器。
3.根据权利要求1所述的I2C通信装置,其特征在于,所述异步计数器包括:第一触发器、第二触发器和第三触发器;
所述第一触发器的时钟输入端与所述地址端口连接,所述第一触发器的输出端分别与所述地址编码器的输入端和所述第二触发器的时钟输入端连接,所述第二触发器的输出端分别与所述地址编码器的输入端和所述第三触发器的时钟输入端连接,所述第三触发器的输出端与所述地址编码器的输入端连接;
所述地址编码器的输入端还与所述地址端口连接。
4.根据权利要求3所述的I2C通信装置,其特征在于,所述I2C通信装置还包括:复位模块;
所述复位模块用于输出复位信号至所述第一触发器、所述第二触发器和所述第三触发器的复位端,以使所述第一触发器、所述第二触发器和所述第三触发器进行复位。
5.根据权利要求4所述的I2C通信装置,其特征在于,所述复位模块的第一输入端与所述串行数据端口连接,所述复位模块的第二输入端与所述时钟端口连接;
所述复位模块依据所述串行数据端口输出的数据信号和所述时钟端口输出的时钟信号获得所述I2C总线数据传输的开始信号,并依据所述开始信号生产所述复位信号。
6.根据权利要求3所述的I2C通信装置,其特征在于,所述I2C通信装置还包括:抗尖峰脉冲模块;
所述抗尖峰脉冲模块用于控制所述信号指令的稳定性。
7.根据权利要求6所述的I2C通信装置,其特征在于,所述抗尖峰脉冲模块的输入端与所述地址端口连接,所述抗尖峰脉冲模块的输出端分别与所述第一触发器的时钟输入端和所述地址编码器的输入端连接。
8.一种I2C通信设备,其特征在于,包括权利要求1-7任一项所述的I2C通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811338272.7A CN109213718B (zh) | 2018-11-12 | 2018-11-12 | 一种i2c通信装置及i2c通信设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811338272.7A CN109213718B (zh) | 2018-11-12 | 2018-11-12 | 一种i2c通信装置及i2c通信设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109213718A true CN109213718A (zh) | 2019-01-15 |
CN109213718B CN109213718B (zh) | 2024-01-26 |
Family
ID=64996176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811338272.7A Active CN109213718B (zh) | 2018-11-12 | 2018-11-12 | 一种i2c通信装置及i2c通信设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109213718B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032321A (zh) * | 2021-05-27 | 2021-06-25 | 上海亿存芯半导体有限公司 | 地址扩展电路、通信接口芯片及通信系统 |
CN113342725A (zh) * | 2021-06-09 | 2021-09-03 | 上海南芯半导体科技有限公司 | 一种用于i2c从机设备地址重置的方法 |
CN113906402A (zh) * | 2019-05-31 | 2022-01-07 | ams国际有限公司 | 集成电路间(i2c)装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4145760A (en) * | 1978-04-11 | 1979-03-20 | Ncr Corporation | Memory device having a reduced number of pins |
CN103095855A (zh) * | 2011-10-27 | 2013-05-08 | 无锡力芯微电子股份有限公司 | I2c通信接口装置 |
CN103123615A (zh) * | 2011-11-18 | 2013-05-29 | 快捷半导体(苏州)有限公司 | 管脚可选的i2c从机地址 |
JP5298185B2 (ja) * | 2009-02-24 | 2013-09-25 | 富士通テレコムネットワークス株式会社 | I2c監視シーケンシャルリードデータ記憶装置 |
US20180150424A1 (en) * | 2016-11-29 | 2018-05-31 | Stmicroelectronics S.R.L. | Dynamic definition of slave address in i2c protocol |
CN108681513A (zh) * | 2018-07-19 | 2018-10-19 | 上海艾为电子技术股份有限公司 | I2c从地址生成装置及芯片 |
CN208834297U (zh) * | 2018-11-12 | 2019-05-07 | 上海艾为电子技术股份有限公司 | 一种i2c通信装置及i2c通信设备 |
-
2018
- 2018-11-12 CN CN201811338272.7A patent/CN109213718B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4145760A (en) * | 1978-04-11 | 1979-03-20 | Ncr Corporation | Memory device having a reduced number of pins |
JP5298185B2 (ja) * | 2009-02-24 | 2013-09-25 | 富士通テレコムネットワークス株式会社 | I2c監視シーケンシャルリードデータ記憶装置 |
CN103095855A (zh) * | 2011-10-27 | 2013-05-08 | 无锡力芯微电子股份有限公司 | I2c通信接口装置 |
CN103123615A (zh) * | 2011-11-18 | 2013-05-29 | 快捷半导体(苏州)有限公司 | 管脚可选的i2c从机地址 |
CN203204606U (zh) * | 2011-11-18 | 2013-09-18 | 快捷半导体(苏州)有限公司 | 一种多地址内置集成电路i2c通信系统 |
US20180150424A1 (en) * | 2016-11-29 | 2018-05-31 | Stmicroelectronics S.R.L. | Dynamic definition of slave address in i2c protocol |
CN108681513A (zh) * | 2018-07-19 | 2018-10-19 | 上海艾为电子技术股份有限公司 | I2c从地址生成装置及芯片 |
CN208834297U (zh) * | 2018-11-12 | 2019-05-07 | 上海艾为电子技术股份有限公司 | 一种i2c通信装置及i2c通信设备 |
Non-Patent Citations (1)
Title |
---|
张博: ""FMC系列采集模块及接口逻辑设计"", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113906402A (zh) * | 2019-05-31 | 2022-01-07 | ams国际有限公司 | 集成电路间(i2c)装置 |
CN113906402B (zh) * | 2019-05-31 | 2023-10-27 | ams国际有限公司 | 集成电路间(i2c)装置 |
US11829319B2 (en) | 2019-05-31 | 2023-11-28 | Ams International Ag | Inter-integrated circuit (I2C) apparatus |
CN113032321A (zh) * | 2021-05-27 | 2021-06-25 | 上海亿存芯半导体有限公司 | 地址扩展电路、通信接口芯片及通信系统 |
CN113342725A (zh) * | 2021-06-09 | 2021-09-03 | 上海南芯半导体科技有限公司 | 一种用于i2c从机设备地址重置的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109213718B (zh) | 2024-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN208834297U (zh) | 一种i2c通信装置及i2c通信设备 | |
CN109213718A (zh) | 一种i2c通信装置及i2c通信设备 | |
US10055376B1 (en) | Serial peripheral interface system with slave expander | |
CN103095855B (zh) | I2c通信接口装置 | |
CN211427190U (zh) | 一种基于飞腾处理器2000+的服务器电路和主板 | |
CN108959155B (zh) | 地址扩展电路和i2c通信接口芯片 | |
CN100480923C (zh) | I2c总线从控制器软实现方法 | |
CN102880235B (zh) | 基于龙芯2f cpu的单板计算机及其复位管理和使用方法 | |
CN208673327U (zh) | 地址扩展电路和i2c通信接口芯片 | |
SE9801738D0 (sv) | Low power counters | |
CN113032321B (zh) | 地址扩展电路、通信接口芯片及通信系统 | |
CN109101448B (zh) | 地址扩展电路和具有该电路的i2c通信接口芯片 | |
CN205608716U (zh) | 一种多组光模块通信接口切换电路 | |
JP4988411B2 (ja) | 直列データ源からのデータを並列フォーマットで読取る方法および装置 | |
bin Jamaludin et al. | Design and analysis of serial peripheral interface for automotive controller | |
CN206684724U (zh) | 一种服务器模块化管理控制系统 | |
CN209015139U (zh) | 一种i2c总线电路、芯片及系统 | |
US20140320189A1 (en) | Programmable bus signal hold time without system clock | |
CN204374831U (zh) | 功能插槽及使用该功能插槽的主板 | |
Carvalho et al. | Enhancing I2C robustness to soft errors | |
CN108536636B (zh) | 一种基于peci总线的主从协商时序机 | |
CN106899502B (zh) | 一种用于PXIe背板的触发信号分段路由装置及方法 | |
CN101228733B (zh) | 在两个异步系统之间传递数据的方法及异步数据缓冲器 | |
CN110232038A (zh) | 一种工控机用智能通讯串口装置 | |
CN214707722U (zh) | 一种万兆排线接口以太网适配器 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |