I2C总线中文讲解,详尽通俗

上传人:小** 文档编号:47066601 上传时间:2021-12-16 格式:DOC 页数:10 大小:484KB
返回 下载 相关 举报
I2C总线中文讲解,详尽通俗_第1页
第1页 / 共10页
I2C总线中文讲解,详尽通俗_第2页
第2页 / 共10页
I2C总线中文讲解,详尽通俗_第3页
第3页 / 共10页
点击查看更多>>
资源描述
I2C总线简介I2C管理总线:(Intel Integrated Circuit bus ) I2C总线是一种由飞利浦 Philip公司开 发的串行总线,产生于80年代,最初为音频和视频设备开发,现主要在服务器管理中使用。是两条串行的总线,它由一根数据线( SDA )和一根 时钟线(SDL )组成。I2C总线的数据传输过程基本过程为:主机发出开始信号。主机接着送出1字节的从机地址信息, 其中最低位为读写控制码 (1为读、0为写), 高7位为从机器件地址代码。从机发出认可信号。主机开始发送信息,每发完一字节后,从机发出认可信号给主机。主机发出停止信号。I2C总线上各信号的具体说明:开始信号:在时钟线(SCL )为高电平其间,数据线(SDA )由高变低,将产生一 个开始信号。停止信号:在时钟线(SCL )为高电平其间,数据线(SDA )由低变高,将产生一 个停止信号。应答信号:既认可信号,主机写从机时每写完一字节,如果正确从机将在下一个时钟周期将数据线(SDA )拉低,以告诉主机操作有效。在主机读从机时正确读完一字 节后,主机在下一个时钟周期同样也要将数据线(S DA )拉低,发出认可信号,告诉从机所发数据已经收妥。(注:读从机时主机在最后1字节数据接收完以后不发应答,直接发停止信号)。注意:在I2C通信过程中,所有的数据改变都必须在时钟线SCL为低电平时改变,在时钟线SCL为高电平时必须保 持数据SDA信号的稳定,任何在时钟线为高电平时数据线上 的电平改变都被认为是起始或停止信号。I2C总线数据格式:I2C数据格式图I2C支持两种数据格式:_ 7-bit/10-bit 寻址数据格式_ 7-bit/10-bit寻址和重复开始信号的数据格式S I2C开始标识Slava address 从设备地址。有两种从地址类型:1) 固定的从地址,I2C总线只能接一个同类型的固定的从地址设备。2) 半固定的从地址,前半部分地址是固定的,后半部分地址是可编程的,I2C总线只 能接多个同类型的半固定的从地址设备。如7bit半固定从地址通常 7-bit中四个较重要的位(MSB)为固定的,并依器件本身性质的分类区分,如1010即代表串行 EEPROM,而其他三个较不重要的位(LSB),即A2、A1与A0则可以通过硬件电子引脚设定,并取得高达 8个不同的I2C地址组合,因此在同一个I2C总线上可以有 8个相同形式的器件运作,这些引脚固定在VCC高电压代表逻辑1,固定在接地低电压则代表逻辑0,7-bit的定址方式可以带来总线上128个器件的组合,但由于部份地址设定保留给特殊指令应用,因此实际上最高器件数大约为120个。R/W 读写操作表示位,0表示写,1表示读。ACK 读写完一个byte的地址数据的应答信号Data 数据,紧跟设备地址传输的第一个byte数据(Data)可以是子地址(sub-address )表示设备的寄存器。S I2C结束标识关于从地址的分配I2C器件的从地址是由I2C总线协会实行统一分配的,飞利浦作为标准I2C总线标准的维护者,负责所有I2C从地址的注册程序以确保能够适当协助授权厂商或其他公司进行从地址的分配。为了避免I2C器件的从地址的冲突必须依赖现有从地址的完整性和可靠的申请注册资料才能达成, 所以I2C器件厂家必须向 philip公司提交I2C从地址申请并提交一定的费用。从地址的申请有两种:第一种是为某一特定的I2C器件设备申请从地址;第二种是为某一同功能的I2C器件设备群组申请从地址。具体如何申请可参考:http:/www.tc n.semic on ductors.philips.eom/markets/mms/protocols/i2c/support/requestform/i ndex .htmlIIC设备规类:laC Device Overviewl2C Device Categories* TV* Radio Rfrceptnan-Audio Proces s.ing* Inltared Control-DTMlF* LCD display control* Clocks/timersOnigrCori-General Purp«# I/O LED display control日 u雪 Exten&ioni/Control AflD and D/A Con verters-EEPROWRAM Handware Monitors-MicrwcnlrollerTW第二种是为某一同功能的I2C器件设备群组申请从地址。第二种是为某一同功能的I2C器件设备群组申请从地址。OMAP730 I2C 简介Figure 14-1. I2C System Overview第二种是为某一同功能的I2C器件设备群组申请从地址。Local host:MPU)Sys:emDMAInzsmipt handlermnqffSMdLledICJRQl2CcontrollerJCSQom_ Kctl<rjcrom_l2C l/FPads IC. SCL l2C. SDAf Vc,zPullup nesistorsIC ccfnpartible devicePC compatible devicePC compatble deticsPC compaJble deviceIC compatiWe device第二种是为某一同功能的I2C器件设备群组申请从地址。第二种是为某一同功能的I2C器件设备群组申请从地址。I2C总线详细介绍I2C总线操作原理3IFVW1O1OA2A1AoEEPROM1010100R/WATAN1 OUTSCLKNH OUT任何I2C器件都可以连接到 个主控端沟通互相传送信息, 每个主控端拥有相同的优先权SCLK -XIIN$CLKH2_|tOUT LDATAM2 IOUT nI2C总线上,而每一个总线上的器件也能和任何一 在总线上至少必须有一个主控端,如微控器或DSP且在 I2C总线上加入或移除器件都非常简便。总线的电容总和必须低于400 pF,大约20到30个器件或10 m的传输长度, 以符合上升与下降时间的要求,每个器件必须驱动3mA形成逻辑低位准,并在开漏极总线内置大约2 K到10 K ohms的提升电阻与0.4 mA的电流,同时并 具有双向I2C总线缓冲器可以用来隔离总线上不同接线的电容,以带来更大 (2000pF)与更长(2000 m) 的总线结构。SCLKIM VsJDATApull-up R 咋爭禺tpr$ $OA (Sena) Data Unej每个I2C器件都拥有一个独一无二的7- bit I2C地址,让主控端知道通信传输 的对象是谁,通常7-bit 中四个较重要的位(MSB)为固定的,并依器件本身性 质的分类区分,如1010即代表串行EEPROM而其他三个较不重要的位(LSB), 即A2、A1与A0则可以通过硬件电子引脚设定,并取得高达8个不同的I2C地址组合,因此在同一个I2C总线上可以有8个相同形式的器件运作,这些引 脚固定在VCC高电压代表逻辑1,固定在接地低电压则代表逻辑 0, 7-bit的 定址方式可以带来总线上128个器件的组合,但由于部份地址设定保留给特殊 指令应用,因此实际上最高器件数大约为120个。I2C总线术语MuterSDASlaveSCLSDASCL发送端-发送数据到总线的器件。当发送端器件可以主动将数据放到总线,我 们称为主控发送端,若可以回应主控端的要求,即称为从属发送端。接收端-接收来自总线传输数据的器件。当接收端器件可以主动接收数据时, 我们称为主控接收端,若依照主控端要求而接收,称为从属接收端。主控端-为启动数据传送(START指令)、产生时钟(SCL)信号并中止数据传 送(STOP指令)的器件,主控端必须是传送端或接收端。从属端-由主控端定址的器件。从属端可以扮演接收端或发送端的角色。多重主控端-在总线上可同时存一个以上的主控端,并且不会造成冲突或数据 遗失。通常来说运用"bit-banged"软件的主控端并不具有多重主控端能力,I2C总线控制器提供了一个将多重主控端硬件I2C连接端口加入到DSP或ASIC的简单方法。仲裁机制-预先定义在特定时间内只有一个主控端能够取得总线控制权。 同步-预先将二个或二个以上的主控端时钟信号予以同步化的定义程序。SDA串行数据信号线(Serial DAa)SCL-串行时钟信号线(Serial Clock)Write Data< n data bytes >last dataRedd DauF S Slave Addms R A DataA DataA P FS = Start condttlotiF = FreeP = Stop condition< n data hytci >last data bjftcA = AcknowledgeFUW = re 2d i Nut writeA = Nat Acknowledge目标器件的I2C地址在第一个位组中送出,而这个起始位组中最不重要位(LSB) 则用来表明主控端将进行发送(写入)数据或由接收端接收(读取)数据,称为 从属器件,每笔数据交换必须以START指令开头,并以STOP或RESTART情况 结束。如果同一个I2C总线上有两个主控端,且同时发出START指令要控制总 线时,那么就会以仲裁机制处理。当主控端,如微控器,已经控制总线时,其他 的主控端必须等到第一个主控端送出 STOP指令,并且将总线回复闲置状态时, 才能控制总线。总线数据传送术语F (FREE)-总线为可用或闲置状态,这时 SDA串行数据线与SCL串行时钟均 为高电位状态。S (START)或R (RESTART)-数据传送是以START情况开始,这时SDA串行 数据线的电压位准会从高电位转变为低电位, 而SCL串行时钟则保持在高电位, 当这个情况发生时,代表了总线进入忙碌 (BUSY)状态。C (CHANGE)当SCL串行时钟数据线为低电位时,数据位就可以由发送端放置 到SDA串行数据在线,在这段时间内,只要SCL串行时钟一直维持在低电位状 态,SDA可以改变它的状态。D (DATA) - SDA串行数据在线高或低电位的数据在 SCL串行时钟线处于高位准 时,在整个传输过程中时钟必须稳定维持在高电位以避免错误判读为 START或 STOP情况。P (STOP)-数据传输在收到STOP指令时结束,这时候SDA串行数据线的位准 由低电位回复到高电位,而 SCL串行时钟线则维持在高电位,一但数据传送结 束后,总线会在自动回复到可用状态。电位转换I2C由于新的I2C器件以各种不同的电压运作,因此飞利浦半导体开发出一个解决 方案,几乎不需要任何额外的动作或成本就能使不同电源电压的I2C器件拥有完整的双向数据传输电路,只要在I2C总线的不同电压位准间加上两颗低成本的晶体管,将电位转换器两端总线上的逻辑电压位准加以隔离,这样的安排同时也让这个电压转换电路可以用来隔离总线上已经断电的装置,使连上电源的I2C器件持续正常运作,这些电位转换功能也可以由低成本电位转换总线缓冲器或 GTL转换器件来达成,I2C总线规格也拓展到运作电压在 2.7 V 以下的器件, 确保I2C总线在迈入新世纪时仍是新一代系统串行总线的最佳选择。高速模式I2C总线高速串行存储器与混合技术电信系统的发展使得总线必须在不同电源电压下高 速运作,而I2C总线高速(High speed) 模式(3.4MHz)正好可以满足这些需 求,在完全不影响与现有的(Standard)与快速(Fast) 模式器件的兼容性,并 保留低成本、简易的特色,不需任何特殊逻辑电位、时序或驱动能力。高速模式 主控端内特别设计的桥接器结构可以让快速与标准模式器件在同一个I2C总线系统中双向通信,在必要时主控端也可以进行双向电位转换,以支持各种不同电源电压的器件,这种高速模式通常只出现在需要传送大量的数据的器件上,如 LCD显示屏、高位数ADC或高容量EEPROM等,其他大多数的维护与控制应用 则以100kHz速度运作的I2C总线为主。10- bit I2C 定址机制10- bit I2C定址可以使用高达1024个额外地址,避免因I2C器件快速增加所 带来的从属地址分配问题。它并未改变I2C总线规格中所定义的地址格式,而是使用现有规格中所保留的地址。10-bit定址并不会影响现有的7-bit 定址功 能,采用7-bit 与10-bit 定址的器件可以连接到相同的I2C总线上,而两种 形式的器件也可以使用在标准、快速或高速模式系统中,虽然多数的I2C器件都还是采用7-bit 定址,然而设计工程师仍可以利用多个I2C总线连接端口或多功器/交换器来达成总线上较小数量的器件,作为另一个解决这个定址的考量。I2C与SMBus比较由 Intel 在 1990 所开发的系统管理总线 (SMBus, System Management Bus), 属于I2C总线常见的衍生规格,通常可与I2C兼容,两个总线都采用两线式通信方式,并且都拥有可定址的从属端,其中 SMBus 的最高数据传输率只有 100 kbps,因此需要经过特别处理,才能使用在拥有较高传输率I2C的系统中,其他的差异还包括计时与最小时钟速率、 电压位准、 提升电阻值与电流位准, 新的 I2C 器件已经陆续加入 SMBus 的功能,如可以依特定应用需求将计时 (timeout) 功能加以开启或关闭。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!