0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是I2C总线 I2C总线开发设计需要注意点

h1654155971.8456 来源:大年君爱好电子 作者:大年君爱好电子 2021-11-01 10:39 次阅读

一、前言

I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息

二、I2C总线开发设计需要注意点

1、总线容量及驱动能力

I2C总线的外围扩展器件都是CMOS器件,总线有足够的电流驱动能力,因此总线上扩展的节点数不由电流负载能力决定,而由电容负载确定。

总线上每个实际节点器件的总线接口都有一定的等效电容,等效电容的存在会造成总线传输的延迟,导致数据传输出错。

通常总线负载能力为400pF,通常各个I2C器件都会有它自己的电容值,一般为不大于20pF,据此可计算出总线长度及节点数目的限制数量。总线上的每个外围器件都有一个器件地址,因此总线上扩展外围器件时也要受器件地址限制。

2、I2C总线的电气结构

I2C总线为双向同步串行总线,因此I2C总线接口内部为双向传输电路,如图。所示。总线端口输出为开漏结构,故总线上必须有上拉电阻,上拉电阻与电源电压、SDA、SCL以及总线串接电阻有关,可参考有关数据手册进行选择,通常可选4.7K到10K。

a2623bdc-3a24-11ec-82a9-dac502259ad0.png

3、每个节点都有一个固定的节点地址。

I2C总线为双向同步串行总线,因此总线上的单片机都可以成为主节点,其器件地址由软件给定,存放在总线的地址寄存器件中,称为主器件的从地址。在总线的多主系统中,单片机作为从节点时,其从地址才有意义,所以总线上所有的外围器件都有规范的器件地址。

4、I2C总线时序

I2C总线上数据传递时,总线上传送的每一帧数据均为一个字节。但启动总线后,传送的字节数没有限制,只要求每传送一个字节后,对方回应一个应答位。在发送时,首先发送的是数据的最高位。每次传送开始有起始信号,结束时有停止信号。在总线传送完一个字节后,可以通过对时钟线的控制使传送暂停。

①时钟和数据发送:

SDA引脚通常使用外部设备拉高。SDA引脚上的数据只能在SCL为低电平时进行更改,SCL为高电平时数据更改将指示开始或停止条件。如图所示。

a28bb048-3a24-11ec-82a9-dac502259ad0.png

②起止条件:

SDA由高到低且SCL为高是启动条件,必须先于任何其他命令。SDA由低到高且SCL为高是停止条件,在一个读序列后,停止命令会使EEPROM进入待机模式。如图所示。

a2bf3a12-3a24-11ec-82a9-dac502259ad0.png

③应答:

所有地址和数据字均以8bit字连续传输到EEPROM,EEPROM发送一个“0”来应答,以确认它已收到每个字。应答发生在第九个时钟周期如图所示。

a30d01d4-3a24-11ec-82a9-dac502259ad0.png

三、设计实例

我们对于AT24C256肯定不会陌生,这是ATMEL公司256kbit串行电可擦的可编程只读存储器,8引脚双排直插式封装,具有结构紧凑、存储容量大等特点,可以在2线总线上并接4片该IC,特别适用于具有高容量数据储存要求的数据采集系统。

a31ccb00-3a24-11ec-82a9-dac502259ad0.png

EEPROM存储器设备既可以接收又可以发送数据。每个挂接在总线上的器件都有唯一一个地址识别。

主机访问EEPROM时,主机在向EEPROM发送完控制字节和地址信息后,紧接着向EEPROM存储器发送起始条件和控制信号并发送读标志位信号,切换数据的收发方向。接着在收到EEPROM的响应信号后便可以读出需要的数据了。

四、总结

通过以上实例,我们可以知道I2C优点主要表现在:

1、简化了硬件电路。在这种总线中只需要两根线,即串行数据线(SDA)和串行的时钟线(SCL)。

2、每个挂在总线上的I2C器件都有一个唯一的地址,并可以通过软件寻址。

3、因为在总线上可能有多个主I2C器件,因此I2C总线接口协议中有冲突监测和仲裁机制,以防止通信中的数据丢失或发生错误。

4、这种串行的两线双向的总线在标准模式下的速率为100kbit/s,在快速模式下的速率为400kbit/s,在高速模式下为3.4Mbit/s。

5、I2C器件中有滤波抗扰措施来保证数据的完整性。

6、在总线上挂接的器件数目是有限的,即总线上的容抗不能超过400pF。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7447

    浏览量

    163579
  • 传输电路
    +关注

    关注

    0

    文章

    10

    浏览量

    10696
  • I2C总线
    +关注

    关注

    8

    文章

    388

    浏览量

    60821
  • SDA
    SDA
    +关注

    关注

    0

    文章

    124

    浏览量

    28111

原文标题:什么是I2C总线,它有着哪些特点,设计时需要哪些细节呢?

文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    I2C总线为什么要接上拉电阻

    输出。 为什么要接上拉电阻? 接上拉电阻是因为I2C通信需要输出高电平的能力。一般开漏输出无法输出高电平,如果在漏极接上拉电阻,则可以进行电平转换。 I2C由两条总线SDA和SCL组成
    的头像 发表于 11-20 10:07 171次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>为什么要接上拉电阻

    详解I2C总线与SPI总线的区别

    I2C(Inter-Integrated Circuit)表示集成电路互连,是一种用于线路板内部芯片之间通信的总线
    的头像 发表于 10-16 15:16 2182次阅读
    详解<b class='flag-5'>I2C</b><b class='flag-5'>总线</b>与SPI<b class='flag-5'>总线</b>的区别

    了解I2C总线

    电子发烧友网站提供《了解I2C总线.pdf》资料免费下载
    发表于 10-08 11:13 1次下载
    了解<b class='flag-5'>I2C</b><b class='flag-5'>总线</b>

    I2C总线上拉电阻计算

    电子发烧友网站提供《I2C总线上拉电阻计算.pdf》资料免费下载
    发表于 10-08 09:54 1次下载
    <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>上拉电阻计算

    I2C总线上拉电阻的必要性

    数据线加上拉电阻。这一设计不仅关乎技术的实现,更涉及系统安全和信号传输效率的优化。本文将深入探讨在I2C总线上加上拉电阻的必要性及其带来的技术优势。 我们需要理解I2C
    的头像 发表于 09-09 17:16 738次阅读

    优秀实践:I3C共享总线上的I2C器件

    电子发烧友网站提供《优秀实践:I3C共享总线上的I2C器件.pdf》资料免费下载
    发表于 09-06 09:49 0次下载
    优秀实践:<b class='flag-5'>I3C</b>共享<b class='flag-5'>总线</b>上的<b class='flag-5'>I2C</b>器件

    I2C总线协议的工作原理和寻址格式

    I2C(Inter-Integrated Circuit)总线协议,即集成电路总线协议,是一种用于连接微控制器及其外围设备的串行总线协议。I2C
    的头像 发表于 05-27 15:47 1561次阅读

    I2C总线物理拓扑结构

    I2C总线上可挂接的设备数量受总线的最大电容400pF限制,如果所挂接的是相同型号的器件,则还受器件地址位的限制。
    发表于 03-15 11:03 754次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>物理拓扑结构

    什么是I2C协议 I2C总线的控制逻辑

    在实际使用过程中,I2C比较容易出现的一个问题就是死锁 ,死锁在I2C中主要表现为:I2C死锁时表现为SCL为高,SDA一直为低。
    发表于 03-12 09:17 946次阅读
    什么是<b class='flag-5'>I2C</b>协议 <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>的控制逻辑

    I2C总线的特点及应用

    I2C总线最主要的优点是其简单性和有效性。占用的空间小,降低了互连成本。总线的长度可高达7.6m,并且能够以10kbps的最大传输速率支持40个组件。
    发表于 02-02 15:56 582次阅读

    蓝牙串口通讯总线——I2C/SPI/UART

    嵌入式工程师在做串口通信调试工作的时候,会经常用到I2C、SPI、UART这3条总线I2C、SPI、UART这三种通信总线在嵌入式领域很常见,目前主流的SOC芯片都内置了这三种
    的头像 发表于 01-22 09:41 1447次阅读
    蓝牙串口通讯<b class='flag-5'>总线</b>——<b class='flag-5'>I2C</b>/SPI/UART

    关于I2C总线的6个问题分析

    I2C总线上的上拉电阻范围是多少? 回答: 总线电容是走线部分、连接部分、管脚部分的电容的总和。总线电容限制了上拉电阻(Rp) 的最大值,因为
    发表于 12-25 09:19 1458次阅读

    I2C总线简介和主要参数讲解

    I2C总线为串行同步通讯总线,可以进行多设备通讯。由飞利浦半导体(现已被恩智浦半导体收购)开发的双向两线总线,用来进行IC芯片之间的通讯。
    的头像 发表于 12-04 14:02 1823次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>简介和主要参数讲解