I2C总线的工作原理和应用

时间:2025-06-17  作者:Diven  阅读:0

在现代电子设备中,各种传感器、芯片和模块之间的通信非常重要。而I2C(Inter-Integrated Circuit)总线作为简单、高效的串行通信协议,已经成为连接各种设备的首选。本文将深入探讨I2C总线的工作原理与应用,带您了解这个在电子领域中是重要配件的通信技术。

I2C总线的工作原理和应用

一、简介

I2C(Inter-Integrated Circuit)总线是由Philips公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发。

由于其简单性,如今方泛用于微控制器与各种功能模块的连接,可以说是学单片机的人,入门之后,必定要涉及到的。

I2C 总线实际上已经成为一个国际标准在超过100 种不同的IC 上实现,而且得到超过50 家公司的许可,正因为其简单和应用,因此其功能也越来不满足人们的要求,其速度也从原来的100Kbit/S,增加了快速模式,其速度达400Kbit/S,再后来也增加了高速模式,其速度更达3.4Mbit/S。

二、功能和特点

I2C总线是用于IC器件之间连接的双向二线制总线,所谓总线上面可以挂多少器件,并且通个两根线连接,占用空间非常的小,总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。

另一优点是多主控,只要能够进行接收和发送的设备都可以成为主控制器,当然多个主控不能同一时间工作。

I2C总线有两根信号线,一根为SDA(数据线),一根为SCL(时钟线),任何时候时钟信号都是由主控器件产生。

I2C总线在传送数据的过程中,主要有三种控制信号:起始信号,结不信号,应答信号。

起始信号:当SCL为高电平时,SDA由高电平转为低电平时,开始传送数据;

结束信号:当SCL为高电平时,SDA由低电平转为高电平时,结束数据传送;

应答信号:接收数据的器件在接收到8bit数据后,向发送数据的器件发出低电平信号,表示已收到数据。这个信号可以是主控器件发出,也可以是从动器件发出。总之由接收数据的器件发出。

这些信号中,起始信号是必需的,结束信号和应答信号,都可以不要。

三、基本操作

下面我们以ATMEL公司的AT24C02来介绍I2C的基本操作。

AT24C02是美国ATMEL公司的低功耗CMOS串行EEPROM,是内含256×8bit存储空间,具有工作电压宽(2.5~5.5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。在系统中始终为从动器件。

对AT24C02的操作主要有:字节读,字节写,页面读,页面写

首先发送起始信号,如下图,起始信号后必须是控制字。

02eb14a0-3fa6-11ee-ac96-dac502259ad0.png

控制字格式如下,其中高四位为器件类型识别符(不同的芯片类型有不同的定义,EEPROM一般应为1010),接着三位为片选,也就是三个地址位,最后一位为读写控制位,当为1(Input)时为读操作,为0(Output)时为写操作。

03138746-3fa6-11ee-ac96-dac502259ad0.png

控制字后就是相应的操作,读或写,一定不要结束,因为这个操作还没有完成,如果结束就等于放弃操作。

先来看写操作,写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同,AT24C02为8字节,每写一个字节后,地址自动加1。

关于页面写的地址、应答和数据传送的时序参见图3,字节写可以看成是只有一个字节的页面写,也就是写一个数据后停止。

注意:写一次需要一定时间,一般为10ms,要等侍这个操作完成,时序如下图。

033f46a6-3fa6-11ee-ac96-dac502259ad0.png

说明:对于AT24C02,在控制字后还必须写入地址,这个地址是以后读写的起始地址。

读操作有三种基本操作:当前地址读、随机读和顺序读。三种操作方法类似,只是读的数据个数不同,可连续读8个字节,图4给出的是顺序读的时序图,图中共读了四个数据,需要注意的是当前的地址,如果不是想要的,可以用写操作,重新写入地址。

非常重要的是,每读一个数据后,必须置低SDA,作为应答,否则,只能读一个数据,后面的数据,因为收到不应答信号,AT24C02就会认为出错,停止操作。

特别提醒的是,当SCL为低电平时,数据是可变的,因些只有SCL为高电平时,才能读数。

四、例程序(51汇编,测试单片机为AT89C51,12M晶振)

035d47a0-3fa6-11ee-ac96-dac502259ad0.png

电路连接如图5,其中A0,A1,A2为地址线,本例中全部接地,因此全部为0。由于SCL和SDA为漏极开路输出,所以在使用时,需加上拉电阻

五、结束语

在I2C总线的应用中应注意的事项为以下几点 :

严格按照时序图的要求进行操作;

若与口线上带内部上拉电阻的单片机接口连接,可以不外加上拉电阻;

程序中为配合相应的传输速率,在对口线操作的指令后可用NOP指令加一定的延时;

为了减少意外的干扰信号将EEPROM内的数据改写可用外部写保护引脚(如果有),或者在EEPROM内部没有用的空间写入标志字,每次上电时或复位时做一次检测,判断EEPROM是否被意外改写。

通过本文的介绍,我们对I2C总线的工作原理和应用有了更深入的了解。无论是在嵌入式系统、物联网设备还是传感器网络中,I2C总线都有着着非常重要的作用。简单、高效的特点使得设备之间的通信变得更加便捷和可靠。随着技术的不断进步,我们相信I2C总线在未来的应用领域中将继续有着着重要的作用,连接着各种智能设备,为我们创造更加便利和智能的生活。

审核编辑:彭菁

猜您喜欢

DDR5 内存凭借更高的频率和带宽,为电脑带来更强劲的性能,成为越来越多用户的选择。然而,升级 DDR5 内存时,电源的选择也很重要。那么,究竟什么样的电源才能...
2024-11-24 00:00:00

热敏电阻是温度传感器,应用于电子产品的温度测量与控制中。的工作原理是基于材料的电阻随温度变化而变化的特性。热敏电阻的外观通常有一些数字和字母标识,这些标识对用户...
2025-04-16 17:00:12

很多人混淆了A型应急照明集中电源和配电箱,认为是同一个东西。实际上,这是两个完全不同的概念。配电箱 主要用于接收和分配电能,并对线路进行过载、短路等保护。就像房...
2024-10-31 00:00:00

温度传感器(temperature transducer sensor)是利用物质各种物理性质随温度变化的规律把温度转换为电量的传感器。本文将介绍如何选择温度传...
2023-07-25 10:05:00

贴片电阻3003,也称为0603封装电阻,是一种小巧而强大的电子元件,应用于各种电子电路中。的大小仅为3mm x 1.6mm,却在电路中是很重要的配件,负责限制...
2024-11-29 10:25:52

现代电子设备中,连接器作为不可少的组成部分,承担着数据和电力的传输任务。CONN-80P_23X2.5MM_SM是一款性能很好的连接器,应用于各种电子产品中。本...
2025-04-24 18:31:18

你是否想过,智能手机是如何在纤薄的机身内,实现持久的续航?或者,电动汽车如何高效地利用电池能量?这背后,都离不开一种关键的电子元件——电源管理IC芯片。电源管理...
2024-05-23 00:00:00

现代电子设备的设计中,封装技术的选择对于电路性能和尺寸优化很重要。TDFN12_2X3MM作为新兴的封装形式,以其独特的尺寸和性能优势,逐渐成为电子行业中的热门...
2025-02-21 11:39:38

随着电子产品的不断发展,表面贴装技术(SMD)在现代电子制造中是越来越重要的配件。其中,SMD_P=0.5mm作为标准的引脚间距设计,因其优越的性能和的应用前景...
2025-04-25 10:01:46

在选择工业软管时,规格和尺寸是非常重要的因素。不同的应用场景对软管的要求各异,因此了解其规格尺寸有助于选购合适的产品。一般而言,工业软管的直径从几毫米到几百毫米...
2022-04-23 00:00:00