I2C总线中文讲解详尽通俗

上传人:cl****1 文档编号:509492907 上传时间:2022-08-11 格式:DOCX 页数:8 大小:148.36KB
返回 下载 相关 举报
I2C总线中文讲解详尽通俗_第1页
第1页 / 共8页
I2C总线中文讲解详尽通俗_第2页
第2页 / 共8页
I2C总线中文讲解详尽通俗_第3页
第3页 / 共8页
I2C总线中文讲解详尽通俗_第4页
第4页 / 共8页
I2C总线中文讲解详尽通俗_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《I2C总线中文讲解详尽通俗》由会员分享,可在线阅读,更多相关《I2C总线中文讲解详尽通俗(8页珍藏版)》请在金锄头文库上搜索。

1、I2C管理总线:(Intel Integrated Circuit bus) I2C总线是一种由飞利浦Philip公司开 发的串行总线,产生于80年代,最初为音频和视频设备开发,现主要在服务器管理中使用。 是两条串行的总线,它由一根数据线(SDA)和一根时钟线(SDL)组成。 I2C总线的数据传输过程基本过程为: 主机发出开始信号。 主机接着送出1字节的从机地址信息,其中最低位为读写控制码(1为读、0为写),高7位为从机器件地址代码。 从机发出认可信号。 主机开始发送信息,每发完一字节后,从机发出认可信号给主机。 I2C总线上各信号的具体说明: 开始信号:在时钟线(SCL)为高电平其间,数据线

2、(SDA)由高变低,将产生一 个开始信号。 停止信号:在时钟线(SCL)为高电平其间,数据线(SDA)由低变高,将产生一 个停止信号。 应答信号:既认可信号,主机写从机时每写完一字节,如果正确从机将在下一个时钟 周期将数据线(SDA)拉低,以告诉主机操作有效。在主机读从机时正确读完一字 节后,主机在下一个时钟周期同样也要将数据线(S DA)拉低,发出认可信号,告 诉从机所发数据已经收妥。(注:读从机时主机在最后1字节数据接收完以后不发应 答,直接发停止信号)。注意:在I2C通信过程中,所有的数据改变都必须在时钟线SCL为低电平时改变,在时钟 线SCL为高电平时必须保持数据SDA信号的稳定,任何

3、在时钟线为高电平时数据线上 的电平改变都被认为是起始或停止信号。 I2C总线数据格式:11111弓1191WtiFySlave addrsss咏Ua:aACKU&taACK匕111ti 7-bit adJrfoi ns口It口11W r 1 1口S1st 7-bilR/WACK:add貉 2nd 7-bitACKC;itHACKs11 1 - 1 D X X一 1 I0 I(b; 1:3ddrt+5ing formal1 | 8 1 1 1 4 1 I3 11S Slav? addr&s; RW ACK |Data| A3K S Slavo 3ddreE&rjW| ackData|ACKsAn

4、y number of bytes(c) Addressing Forinai With Repeated Start CcmlitionAny number - of bytesI2C数据格式图I2C支持两种数据格式:_ 7-bit/10-bit寻址数据格式_ 7-bit/10-bit寻址和重复开始信号的数据格式 S I2C开始标识 Slava address 从设备地址。有两种从地址类型:1)固定的从地址,I2C总线只能接一个同类型的固定的从地址设备。2)半固定的从地址,前半部分地址是固定的,后半部分地址是可编程的,I2C总线只 能接多个同类型的半固定的从地址设备。如7bit半固定从地址通

5、常7-bit中四个较重要的位(MSB)为固定的,并依器件本身性 质的分类区分,如1010即代表串行EEPROM,而其他三个较不重要的位(LSB),即 A2、A1与A0则可以通过硬件电子引脚设定,并取得高达8个不同的PC地址组合, 因此在同一个PC总线上可以有8个相同形式的器件运作,这些引脚固定在VCC高 电压代表逻辑1,固定在接地低电压则代表逻辑0, 7-bit的定址方式可以带来总线上 128个器件的组合,但由于部份地址设定保留给特殊指令应用,因此实际上最高器件数 大约为120个。 R/W 读写操作表示位,0表示写,1表示读。 ACK 读写完一个byte的地址数据的应答信号 Data 数据,紧

6、跟设备地址传输的第一个byte数据(Data)可以是子地址(sub-address) 表示设备的寄存器。 S I2C结束标识关于从地址的分配I2C器件的从地址是由I2C总线协会实行统一分配的,飞利浦作为标准I2C总线标准的维护者, 负责所有I2C从地址的注册程序以确保能够适当协助授权厂商或其他公司进行从地址的分配。为 了避免I2C器件的从地址的冲突必须依赖现有从地址的完整性和可靠的申请注册资料才能达成, 所以I2C器件厂家必须向philip公司提交I2C从地址申请并提交一定的费用。从地址的申请有两种:第一种是为某一特定的I2C器件设备申请从地址;第二种是为某一同功能的I2C器件设备群组申请从地

7、址。具体如何申请可参考:http:/ IIC设备规类:C Device Overview TV ReMpfioiffl Radio Reception Audio Proe&ssirg Infrared Control-IDTWIF LCD display comfarol CkQksitiimierslzC Device Categories- General Purpos.fi I/O LED display c orrtjrol Bus Esten-si arV Contro I A|-D and DA Converters EEPROMiRAM Har dware Monitors M

8、i-crwntrllier20a=- rKFMLm FC Bus OMAP730 I2C 简介Figure f 4一 1,徉U Sys怕m Ovewie、帖DCInterrupt handlerLocal host(MPU)sysiem MAMnq 一landyQId1比吃2Ccortro lerl2C i/-Padsi-c. SCLPC. SDAPullup resistnrs阮1SDAI兀conpatibfecevicePCcompatibledevicel2ccompallDledeviceItcompazibledeviceccnratibledevice二. I2C总线详细介绍I2C

9、总线操作原理任何i2c器件都可以连接到rc总线上,而每一个总线上的器件也能和任何一 个主控端沟通互相传送信息,在总线上至少必须有一个主控端,如微控器或DSP, 每个主控端拥有相同的优先权,且在I2C总线上加入或移除器件都非常简便。SCLKNJOLH沁KIhlI Ek d Data Line5C_ :Ser d 匚lock L ne SClKSCLKPjIkrPresistorsSCLKN2CUT0ATAN1OUTj-xx1 DATA /uncabA.TAN2OUTDEVICE 1OVICES总线的电容总和必须低于400 pF,大约20到30个器件或10 m的传输长度, 以符合上升与下降时间的要

10、求,每个器件必须驱动3mA形成逻辑低位准,并在 开漏极总线内置大约2 K到10 K ohms的提升电阻与0.4 mA的电流,同时并 具有双向I2C总线缓冲器可以用来隔离总线上不同接线的电容,以带来更大 (2000pF)与更长(2000 m)的总线结构。Ag-11010100r/w每个I2C器件都拥有一个独一无二的7-bitrc地址,让主控端知道通信传输 的对象是谁,通常7-bit中四个较重要的位(MSB)为固定的,并依器件本身性 质的分类区分,如1010即代表串行EEPROM,而其他三个较不重要的位(LSB), 即A2、A1与A0则可以通过硬件电子引脚设定,并取得高达8个不同的rc 地址组合,

11、因此在同一个I2C总线上可以有8个相同形式的器件运作,这些引 脚固定在VCC高电压代表逻辑1,固定在接地低电压则代表逻辑0,7-bit的 定址方式可以带来总线上128个器件的组合,但由于部份地址设定保留给特殊 指令应用,因此实际上最高器件数大约为120个。I2C总线术语MasterSDASIva3 DA发送端-发送数据到总线的器件。当发送端器件可以主动将数据放到总线,我 们称为主控发送端,若可以回应主控端的要求,即称为从属发送端。接收端-接收来自总线传输数据的器件。当接收端器件可以主动接收数据时, 我们称为主控接收端,若依照主控端要求而接收,称为从属接收端。主控端-为启动数据传送(START指

12、令)、产生时钟(SCL)信号并中止数据传 送(STOP指令)的器件,主控端必须是传送端或接收端。从属端-由主控端定址的器件。从属端可以扮演接收端或发送端的角色。多重主控端-在总线上可同时存一个以上的主控端,并且不会造成冲突或数据 遗失。通常来说运用bit-banged软件的主控端并不具有多重主控端能力,rC 总线控制器提供了一个将多重主控端硬件I2C连接端口加入到DSP或ASIC 的简单方法。仲裁机制-预先定义在特定时间内只有一个主控端能够取得总线控制权。 同步-预先将二个或二个以上的主控端时钟信号予以同步化的定义程序。SDA -串行数据信号线(Serial DAta)SCL 串行时钟信号线(

13、Serial CLock)Write DataI 古!it data byteRgd D-d1FSlaMAddress RiADataADataAPF l-ast data byteS - Start cohditlonF = Fre-eP = Stop conditionA = Ac kFVW = rE i Not writeA = Not Acknowl edge目标器件的I2C地址在第一个位组中送出,而这个起始位组中最不重要位(LSB) 则用来表明主控端将进行发送(写入)数据或由接收端接收(读取)数据,称为 从属器件,每笔数据交换必须以START指令开头,并以STOP或RESTART情况

14、 结束。如果同一个I2C总线上有两个主控端,且同时发出START指令要控制总 线时,那么就会以仲裁机制处理。当主控端,如微控器,已经控制总线时,其他 的主控端必须等到第一个主控端送出STOP指令,并且将总线回复闲置状态时, 才能控制总线。总线数据传送术语F (FREE)-总线为可用或闲置状态,这时SDA串行数据线与SCL串行时钟均 为高电位状态。S (START)或R (RESTART)-数据传送是以START情况开始,这时SDA串行 数据线的电压位准会从高电位转变为低电位,而SCL串行时钟则保持在高电位, 当这个情况发生时,代表了总线进入忙碌(BUSY)状态。C (CHANGE)-当SCL串行时钟数据线为低电位时,数据位就可以由发送端放置 到SDA串行数据在线,在这段时间内,只要SCL串行时钟一直维持在低电位状 态,SDA可以改变它的状态。D (D

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号