浅谈I2C总线工作原理与应用

发布者:Chunjie2022最新更新时间:2011-08-30 关键字: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的操作主要有:字节读,字节写,页面读,页面写

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




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




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

  先来看写操作,写操作分为字节写和页面写两种操作,对于页面写根据芯片的一次装载的字节不同有所不同,AT24C02为8字节,每写一个字节后,地址自动加1。关于页面写的地址、应答和数据传送的时序参见图3,字节写可以看成是只有一个字节的页面写,也就是写一个数据后停止。注意:写一次需要一定时间,一般为10ms,要等侍这个操作完成。时序如下图:

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



  读操作有三种基本操作:当前地址读、随机读和顺序读。三种操作方法类似,只是读的数据个数不同,可连续读8个字节,图4给出的是顺序读的时序图,图中共读了四个数据,需要注意的是当前的地址,如果不是想要的,可以用写操作,重新写入地址。非常重要的是,每读一个数据后,必须置低SDA,作为应答,否则,只能读一个数据,后面的数据,因为收到不应答信号,AT24C02就会认为出错,停止操作。特别提醒的是,当SCL为低电平时,数据是可变的,因些只有SCL为高电平时,才能读数。

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

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

  五 . 结束语

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

  1) 严格按照时序图的要求进行操作,

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

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

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

关键字:I2C总线  工作原理 引用地址:浅谈I2C总线工作原理与应用

上一篇:基于CAN 总线嵌入式驱动编程
下一篇:基于MFR4200的FlexRay总线接口技术

推荐阅读最新更新时间:2024-05-02 21:33

PLC是什么 工作原理和结构组成
  PLC是可编程逻辑控制器(Programmable Logic Controller)的缩写。它是一种用于自动化控制系统中的数字计算机,通常用于工业自动化、机器人控制、流程控制等领域。PLC具有高度可编程性和灵活性,可以根据不同的应用需求编写不同的程序,实现不同的控制逻辑。同时,PLC还具有高稳定性、高可靠性和易于维护等优点,因此在工业自动化领域中得到广泛应用。   PLC(可编程逻辑控制器)其主要功能是接收、处理和输出控制信号,实现工业设备的控制和自动化管理。PLC的工作原理如下:   1. 输入信号检测:PLC接收来自各种传感器和控制器的输入信号,如开关信号、温度信号、压力信号等。   2. 信号处理:PLC通过内
[嵌入式]
电压关断型缓冲器(RCD Snubber)的基本类型及其工作原理
 本文较深入地讨论了两种常用模式的RCD Snubber电路:抑制电压上升率模式与电压钳位模式,详细分析了其各自的工作原理,给出了相应的计算公式,最后通过实验提出了电路的优化设计方法。    RCD Snubber电路的基本类型及其工作原理   RCD Snubber是一种能耗式电压关断型缓冲器,分为抑制电压上升率模式和电压钳位模式两种类型,习惯上前者称为RCD Snubber电路,而后者则称为RCD Clamp电路。   为了分析方便,以下的分析或举例均针对反激电路拓扑,开关器件为功率MOSFET。        图1 常用的RCD Snubber电路    抑制电压上升率模式   对于功率MOSFET来讲,其电流下降的
[电源管理]
电压关断型缓冲器(RCD Snubber)的基本类型及其<font color='red'>工作原理</font>
I2C总线之(一)---概述
概述: I²C 是Inter-Integrated Circuit的缩写,发音为"eye-squared cee" or "eye-two-cee" , 它是一种两线接口。 I²C 只是用两条双向的线,一条 Serial Data Line (SDA) ,另一条Serial Clock (SCL)。 SCL:上升沿将数据输入到每个EEPROM器件中;下降沿驱动EEPROM器件输出数据。(边沿触发) SDA:双向数据线,为OD门,与其它任意数量的OD与OC门成"线与"关系。 输出级 每一个I2C总线器件内部的SDA、SCL引脚电路结构都是一样的,引脚的输出驱动与输入缓冲连在一起。其中输出为
[嵌入式]
全面讲解PLC的基本结构和工作原理
PLC的定义 可编程序控制器是一种数字运算操作电子系统,专为在工业环境下应用而设计。它采用了可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。可编程序控制器及其有关的外围设备,都应按易于与工业控制系统形成一个整体、易于扩充其功能的原则设计。 PLC的分类 PLC产品种类繁多,其规格和性能也各不相同。对于PLC,通常根据其结构形式的不同、功能的差异和I/O点数的多少等进行大致分类。 1.按结构形式分类 根据PLC的结构形式,可将PLC分为整体式和模块式两类。 (1)整体式PLC 整体式PLC是将电源、CPU、I/O接口等部件都
[嵌入式]
全面讲解PLC的基本结构和<font color='red'>工作原理</font>
利用I2C总线实现ATmega88的在应用编程
引言 随着嵌入式系统技术的发展,电可擦除的Flash存储器由于具有容量大、成本低、编程方便等优点,在微控制器领域得到了广泛的应用Flash微控制器在正常运行前必须将Flash写入用户应用程序,目前对微控制器的Flash程序存储器进行编程的方法主要有出厂固化、编程器编程、在系统编程(In System Programming,ISP)和在应用编程(In Application programming,IAP)4种。 其中,出厂固化和编程器编程方法都要求微控制器在焊接前将程序写入,这显然不满足开发阶段的调试和日后升级的需要。目前比较普及的是在板可编程的ISP和IAP方法。ISP是通过微控制器的串行编程写入应用程序,需要少量的外
[单片机]
利用<font color='red'>I2C总线</font>实现ATmega88的在应用编程
15W耳机桥接放大器电路的工作原理
该放大器电路的工作原理是桥式放大器,其中两个放大器用作一个放大器,没有任何接地连接到扬声器。与通常的放大器电路相比,桥式放大器可以放大双倍的增益。 该电路可在 4 欧姆扬声器下产生 15 瓦输出。该放大器电路的失真电平等于1%。该放大器电路所需的电源是18VDC单电源。 在组装此放大器时,IC TDA2002应提供散热器,以免过热,从而损坏电路。 15 W 耳机桥接放大器零件列表: R1, R2 : 470 欧姆 C1, C4 : 2,2 uF C2 : 10 nF C3 : 10 uF C5 : 100 uF C6 : 100 nF U1 : TDA 2002
[嵌入式]
15W耳机桥接放大器电路的<font color='red'>工作原理</font>
DM9000AE工作原理 以太网接口电路设计
文章主要介绍了一个基于三星ARM9芯片S3C2440嵌入式系统的以太网接口电路设计方案,采用了工业级以太网控制器DM9000AEP成功实现了嵌入式系统网络数据交换。论文在重点阐述了网络接口电路基础之上,对Windows CE系统控制软件部分DM9000AEP的驱动程序和注册表项进行了具体分析。 随着微电子技术和计算机技术的发展,嵌入式技术得到广阔的发展,已成为现代工业控制、通信类和消费类产品发展的方向。以太网在实时操作、可靠传输、标准统一等方面的卓越性能及其便于安装、维护简单、不受通信距离限制等优点,已经被国内外很多监控、控制领域的研究人员广泛关注,并在实际应用中展露出显着的优势。本文提出了一种基于DM9000AE网络接口芯片
[单片机]
DM9000AE<font color='red'>工作原理</font> 以太网接口电路设计
电子气门的结构与工作原理
宝马车电子气门(VALVETRONIC)是指由全可变气门行程控制装置和可变凸轮轴控制装置(双VANOS)构成的,可以任意选择进气门关闭时刻。电子气门在很大程度上承担了节气门的功能。为此需要使用一种全可变气门行程控制装置。 一、电子气门的结构 宝马车电子气门的构成如图1所示。在进气门打开情况下进气量是通过调节气门行程来完成的,这样就能确定最佳的气缸气量。 1、伺服电动机 伺服电动机又称执行电动机,布置在凸轮轴上方。伺服电动机的蜗杆嵌入安装在偏心轴上的蜗轮内。伺服电动机是一个典型闭环反馈系统,减速齿轮组由电动机驱动,其终端(输出端)带动一个线性的比例电位器作位置检测,该电位器把转角坐标转换为一比例电压反馈给控制线路板,控制线
[嵌入式]
电子气门的结构与<font color='red'>工作原理</font>
小广播
热门活动
换一批
更多
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved