手机版

I2C时序分析和基础知识总结

发布时间:2024-11-17   来源:未知    
字号:

关于I2C总线的一些个人见解

一、什么是I2C

二、I2C时序分析三、I2C基础知识 四、I2C注意事项

关于I2C总线的一些个人见解

I2C(Inter-Integrated Circuit)总线是由PHILIPS公司(现在的NXP半导体)开发的两 线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种 总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式 小,通信速率较高等优点。

I2C总线只有两根双向信号线。一根是数据线SDA, 另一根是时钟线SCL。

关于I2C总线的一些个人见解

I2C总线通过上拉电阻接正电源。当总线空闲时,两根线 均为高电平。连到总线上的任一器件输出的低电平,都将使 总线的信号变低,即各器件的SDA及SCL都是线“与”关系。

关于I2C总线的一些个人见解

1、数据位的有效性规定I2C总线进行数据传送时,时钟信号为高电平期间,数据 线上的数据必须保持稳定,只有在时钟线上的信号为低电 平期间,数据线上的高电平或低电平状态才允许变化。

关于I2C总线的一些个人见解

2、起始和终止信号SCL线为高电平期间,SDA线由高电平向低电 平的变化表示起始信号;SCL线为高电平期间, SDA线由低电平向高电平的变化表示终止信号。

SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电 平的期间,SDA状态的改变被用来表示起始和停止条件。

关于I2C总线的一些个人见解

I2C 总线是双向传输的总线,因此主机和从机都可能成为发 送器和接收器。如果主机向从机发送数据,则主机是发送器, 而从机是接收器;如果主机从从机读取数据,则主机是接收器, 而从机是发送器。不论主机是发送器还是接收器,时钟信 号 SCL 都要由主机来产生。 每个器件都有一个唯一的地址识别,而且都可以作为一个 发送器和接收器(由器件的功能决定)。很明显,LCD驱动器 只能是接收器,而存储器既可以接收又可以发送数据。

关于I2C总线的一些个人见解

连接到I2C总线上的器件,若具有I2C总线的硬件接口,则 很容易检测到起始和终止信号。对于不具备I2C总线硬件接 口的有些单片机来说,为了检测起始和终止信号,必须保证 在每个时钟周期内对数据线SDA采样两次。

接收器件收到一个完整的数据字节后,有可能需要完成 一些其它工作,如处理内部中断服务等,可能无法立刻接收 下一个字节,这时接收器件可以将SCL线拉成低电平,从而 使主机处于等待状态。直到接收器件准备好接收下一个字节 时,再释放SCL线使之为高电平,从而使数据传送可以继续 进行。

关于I2C总线的一些个人见解

3、数据传送格式 (1)字节传送与应答每一个字节必须保证是8位长度。数据传送时,先传 送最高位(MSB),每一个被传送的字节后面都必须跟 随一位应答位(即一帧共有9位)。

关于I2C总线的一些个人见解

由于某种原因从机不对主机寻址信号应答时(如从机 正在进行

实时性的处理工作而无法接收总线上的数据), 它必须将数据线置于高电平,而由主机产生一个终止信号 以结束总线的数据传送。 如果从机对主机进行了应答,但在数据传送一段时间后 无法继续接收更多的数据时,从机可以通过对无法接收的 第一个数据字节的“非应答”通知主机,主机则应发出终 止信号以结束数据的继续传送。 当主机接收数据时,它收到最后一个数据字节后,必须 向从机发出一个结束传送的信号。这个信号是由对从机的 “非应答”来实现的。然后,从机释放SDA线,以允许主 机产生终止信号。

关于I2C总线的一些个人见解

但如果从机要完成一些其他功能后才能接收或发送下一个完 整的数据字节,那么可以使时钟信号保持低电平迫使主机进入等 待状态。这也是唯一一个从机改变主机时钟的情况。 当从机准备好接受下一个字节时,释放时钟线SCL,数据传 输继续。

关于I2C总线的一些个人见解

(2)数据帧格式 I2C总线上传送的数据信号是广义的,既包括地址 信号,又包括真正的数据信号。在起始信号后必须传送一个从机的地址(7位), 第8位是数据的传送方向位(R/),用“0”表示主机 发送数据(T),“1”表示主机接收数据(R)。每 次数据传送总是由主机产生的终止信号结束。但是, 若主机希望继续占用总线进行新的数据传送,则可 以不产生终止信号,马上再次发出起始信号对另一 从机进行寻址。 在总线的一次数据传送过程中,可以有以下几种 组合方式:

关于I2C总线的一些个人见解

a、主机向从机发送数据,数据传送方向在整 个传送过程中不变:

注:有阴影部分表示数据由主机向从机传送,无阴影部分则 表示数据由从机向主机传送。 A表示应答, A表示非应答(高电平)。S表示起始信号, P表示终止信号。

关于I2C总线的一些个人见解

b、主机在第一个字节后,立即由从机读数据

c、在传送过程中,当需要改变传送方向时, 起始信号和从机地址都被重复产生一次,但 两次读/写方向位正好反相。

关于I2C总线的一些个人见解

4、总线的寻址 I2C总线协议有明确的规定:采用7位的寻址字 节(寻址字节是起始信号后的第一个字节)。 (1)寻址字节的位定义

D7~D1位组成从机的地址。D0位是数据 传送方向位,为“0”时表示主机向从机写数 据,为“1”时表示主机由从机读数据。

关于I2C总线的一些个人见解

主机发送地址时,总线上的每个从机都将这7 位地址码与自己的地址进行比较,如果相同, 则认为自己正被主机寻址,根据R/位将自己确 定为发送器或接收器。 从机的地址由固定部分和可编程部分组成。 在一个系统中可能希望接入多个相同的从机, 从机地址中可编程部分决定了可接入总线该类 器件的最大数目。如一个从机的7位寻址位有 4位是固定位,3位是可编

程位,这时仅能寻 址8个同样的器件,即可以有8个同样的器件 接入到该I2C总线系统中。

关于I2C总线的一些个人见解

(2)寻址字节中的特殊地址 固定地址编号0000和1111已被保留作为特 殊用途。

I2C时序分析和基础知识总结.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)