深入了解I2C接口及其应用

一、简介

        I2C(Inter-IntegratedCircuit)总线是由PHILIPS公司开发的两线式串行通信总线,使用多主从架构,用于连接微控制器及其外围低速设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。
        I2C总线支持任何IC生产过程(CMOS、双极性)。通过串行数据(SDA)线和串行时钟(SCL)线在连接到总线的器件间传递信息。每个器件都有一个唯一的地址识别(无论是微控制器——MCU、LCD驱动器、存储器或键盘接口),而且都可以作为一个发送器或接收器(由器件的功能决定)。LCD驱动器只能作为接收器,而存储器则既可以接收又可以发送数据。除了发送器和接收器外,器件在执行数据传输时也可以被看作是主机或从机。主机是初始化总线的数据传输并产生允许传输的时钟信号的器件。此时,任何被寻址的器件都被认为是从机。

        I2C只使用两条双向开放集极(OpenDrain)总线(串行数据(SDA)及串行时钟频率(SCL))并利用电阻将电位上拉。I2C允许相当大的工作电压范围,但典型的电压准位为+3.3V或+5v。
        I2C的参考设计使用一个7比特长度的地址空间但保留了16个地址,所以一组总线内最多可以有112个节点通信。常见的I2C总线依传输速率的不同而有不同的模式:标准模式(100Kbit/s)、低速模式(10Kbit/s),但时钟频率可被允许下降至零,这代表可以暂停通信。而新一代的I2C总线可以和更多的节点(支持10比特长度的地址空间)以更快的速率通信:快速模式(400Kbit/s)、高速模式(3.4Mbit/s)。
        虽然最大的节点数目是被地址空间所限制住,但实际上也会被总线上的总电容所限制住,一般而言为400pF。
        1992年完成了最初的标准版本发布,新增了传输速率为400kbit/s的快速模式及长度为10比特的寻址模式可容纳最多1008个节点。1998年发布了2.0版,新增了传输速率为3.4Mbit/s的高速模式并为了节省能源而减少了电压及电流的需求。2.1版则在2000年完成,这是一个对2.0版做一些小修正,version3.0,于2007年发布。

        2012 年 2 月 13 日发布 Specification Rev. 新增 5-MHz 的超快速模式(UFM)。

二、特点

1、 只要求两条总线线路:一条串行数据线 SDA,一条串行时钟线 SCL;
2、 每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主机接收器;
3、 它是一个真正的多主机总线,如果两个或更多主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏;
4、 串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下可达 3.4Mbit/s;
5、 连接到相同总线的 IC 数量只受到总线的最大电容 400pF 限制。

三、应用

I2C 被应用在简单的周边且其制造成本较传输速度更为要求。一些常见的应用如下:
 为了保存用户的设置而访问 NVRAM 芯片(NOV-VLOATILE random access memory)。
 访问低速的数字模拟转换器(DAC)。
 访问低速的模拟数字转换器(ADC)。
 改变监视器的对比度、色调及色彩平衡设置(视频数据通道)。
 改变音量大小。
 取得硬件监视及诊断数据,例如中央处理器的温度及风扇转速。
 读取实时时钟(Real-time clock)。
 在系统设备中用来打开或关闭电源供应。

        I2C的另一个强大用途在于单片机的应用,利用两根通用的输入输出接脚及软件的规划,可以让单片机控制一个小型网络。
        周边可以在系统仍然在运作的同时加入或移出总线,这代表对于有热插拔需求的设备而言是个理想的总线。
        像I2C这样的总线之所以流行起来,是因为计算机工程师发现到对于集成电路设计而言,许多的制造成本源自于封装尺寸及接脚数量。更小的包装通常能够减少重量及电源的消耗,这对于移动电话及手持式计算机而言格外重要。

典型应用电路: EEPROM

        其中,A0/A1/A2指定了EEPROM的地址,R6/R7将总线电平上拉到3.3V。wp为写保护控制,输入高电平时,只能对EEPROM进行读操作。
        其它应用:连接各类传感器及音频视频设备。

物联沃分享整理
物联沃-IOTWORD物联网 » 深入了解I2C接口及其应用

发表评论