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

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

3天内不再提示

I2C总线简介

嵌入式星球 2020-10-10 09:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文介绍了互连集成电路I2C)串行通信协议的基本特征和显着优势。

组件之间的通信通信协议

电子系统的一个共同特征是需要在两个或三个或十个单独的组件之间共享信息,这不足为奇。
工程师已经开发出许多标准协议,可以帮助不同的芯片成功通信。当您遇到微控制器或数字信号处理器功能列表中“通信”下的缩写词时,这一事实就变得显而易见。我2 C,可以。。。。每种协议都有其优点和缺点,因此对每个协议都有一点了解很重要,这样你在选择组件或接口时就可以做出明智的决定。
本文是关于I 2 C的,它通常用于位于同一PCB上的各个集成电路之间的通信。同样适用于此通用类别的另外两个常见协议是UART(通用异步接收器/发送器)和SPI(串行外围设备接口)。你需要先了解I 2 C 的基本特性,然后才能彻底理解这三个接口之间的比较,因此,我们将在本文结尾处讨论该主题。

什么是I2C总线?

I 2 C代表内部集成电路总线。毫无疑问,I 2 C协议存在严重的术语问题。最直接(也可能是最不常见)的缩写是IIC。也许这个缩写被忽略了,因为两个大写字母I看起来像两个1,或者两个小写的l,或者罗马数字II,或者是并联电阻的符号。。。。无论如何,缩写I 2 C(用“ I squared C”表示)得到了普及,尽管将普通字母视为变量是幂运算的逻辑存在疑问。
当你发现SMB或SMBus显然被用作引用I 2 C总线的另一种方式时,雾气的最后一层定居下来。实际上,这些缩写是指系统管理总线,它与I 2 C总线不同,尽管几乎相同。最初的I 2 C协议是由Phillips Semiconductor开发的,几年后,英特尔将SMBus协议定义为I2C的扩展。两条巴士在很大程度上可以互换。如果你对它们之间的细微差别感兴趣,请参考《系统管理总线规范》第57页。

就像试图在一个充满人的房间里进行重要的对话

为了欣赏使I 2 C如此有效的巧妙技术,你需要考虑在多个独立组件之间实现可靠通用的通信的困难。如果你有一个芯片始终是主芯片,而另一个芯片则始终是从芯片,那么情况就很简单。

但是,如果你有多个从机怎么办?如果从机不知道主机是谁怎么办?如果主机由于某种原因从机请求数据而导致从机失效,会发生什么情况呢?或者,如果从站在传输过程中不起作用怎么办?如果主机要求总线进行传输然后在释放总线之前崩溃怎么办?

关键是,在这种通信环境中,很多事情都会出错。在学习I 2 C 时,必须牢记这一点,因为否则,该协议似乎将变得非常复杂和挑剔。事实是,这种额外的复杂性使I 2 C能够提供灵活,可扩展,强大,低引脚数的串行通信。

I2C通信概述

在开始任何细节之前,这里是I 2 C 的主要特征:

]

  • 数据以一个字节的部分传输,每个字节后跟一个称为ACK / NACK(确认或未确认)位的一位握手信号


I2C的优势是什么?I2C,UART,SPI

这里有一些缺点:

  • 增加了固件或底层硬件的复杂性

  • 施加协议开销,从而降低吞吐量

  • 需要上拉电阻

    • 极限时钟速度

    • 在空间极为有限的系统中消耗宝贵的PCB面积

    • 增加功耗

从这些方面我们可以看到,当您拥有复杂,多样化或广泛的通信设备网络时,I]你可能需要刻意避免I2C, 如果吞吐量是一个主要关心的问题; SPI支持更高的时钟频率,并使开销最小化。而且,SPI(或UART)的底层硬件设计要简单得多,因此,如果您使用FPGA并从头开始开发串行接口,则应该将I 2 C视为最后的选择。

结论

我们已经介绍了I 2 C 的显着特征,并且现在我们对协议的优缺点了解得足够多,从而可以就给定应用选择哪种串行总线做出明智的决定。在以后的文章中,我们将更详细地探讨该协议以及如何实际实现它。

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

    关注

    8

    文章

    422

    浏览量

    63492
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SGM4541 I2C总线过压保护器:设计与应用的详细解析

    SGM4541 I2C总线过压保护器:设计与应用的详细解析 在如今的电子设备设计中,保护电路免受过电压的损害是至关重要的。SG Micro Corp推出的SGM4541 I2C总线过压
    的头像 发表于 03-17 16:30 383次阅读

    SGM4541A:I2C总线过压保护的理想之选

    SGM4541A:I2C总线过压保护的理想之选 在电子设备的设计中,I2C总线的稳定运行至关重要。而SGM4541A作为一款低IQ I2C
    的头像 发表于 03-17 16:30 211次阅读

    PCA9545A/45B/45C:4通道I2C总线开关的深度解析

    PCA9545A/45B/45C:4通道I2C总线开关的深度解析 在电子工程师的日常设计工作中,I2C总线开关是实现多设备通信和信号切换的重
    的头像 发表于 02-10 11:50 982次阅读

    I2C总线-通信线缆长度的影响及改进措施

    I2C总线确实不适合远距离通信,尤其是需要使用线缆与I2C接口器件进行通信,这里的“不适合”并不是说不可以,这也是本文的重点。一般使用I2C总线
    发表于 01-21 06:03

    I2C 为什么只要两根线就能搞定通信?

    的项目,您可能会发现自己正在使用I2CI2C通信简介I2C结合了SPI和UART的最佳特性。使用I2C,您可以将多个从机连接到单个主机(类
    的头像 发表于 01-04 09:14 2041次阅读
    <b class='flag-5'>I2C</b> 为什么只要两根线就能搞定通信?

    探索PCF8584:I2C总线控制器的卓越之选

    探索PCF8584:I2C总线控制器的卓越之选 在电子工程师的日常工作中,选择合适的芯片来实现特定功能至关重要。今天,我们就来深入探讨一款功能强大的I2C总线控制器——PCF8584,
    的头像 发表于 12-28 15:40 752次阅读

    P82B715:I2C总线扩展的得力助手

    P82B715:I2C总线扩展的得力助手 在电子设计领域,I2C总线是一种常用的通信协议,但它的总线电容限制往往会影响实际通信距离和系统设计
    的头像 发表于 12-26 10:20 1520次阅读

    基于FPGA的I2C控制模块设计

    I2C_WRITE_WDATA.v模块实现I2C写时序,I2C_Controller (I2C控制器)例化了I2C_WRITE_WDATA.
    的头像 发表于 12-26 09:48 5931次阅读
    基于FPGA的<b class='flag-5'>I2C</b>控制模块设计

    深入解析TCA9617B:I2C总线中继器的卓越之选

    深入解析TCA9617B:I2C总线中继器的卓越之选 在电子工程师的日常设计工作中,I2C总线和SMBus系统的应用极为广泛。而TCA9617B作为一款BiCMOS双双向缓冲器,专为
    的头像 发表于 12-22 15:20 634次阅读

    AS32X601的I2C模块操作EEPROM详解

    国科安芯推出的AS32X601系列MCU芯片内置的I2C模块提供了符合工业标准的两线串行制接口,可用于MCU和外部I2C设备的通讯。I2C总线使用两条串行线:串行数据线SDA和串行时钟
    的头像 发表于 12-21 21:39 1580次阅读
    AS32X601的<b class='flag-5'>I2C</b>模块操作EEPROM详解

    TCA39306双向I2C总线和SMBus电压电平转换器技术解析

    TCA39306双向I2C总线和SMBus电压电平转换器技术解析 在电子设计领域,电压电平转换是一个常见且关键的问题,特别是在涉及不同电压标准的总线通信时。TCA39306作为一款双路双向电压
    的头像 发表于 12-17 10:00 535次阅读

    I2C总线协议

    I2C 总线使用两根信号线(数据线 SDA 和时钟线 SCL)在设备间传输数据。SCL 为单向时钟线,固定由主机驱动。SDA 为双向数据线,在数据传输过程中由收发两端分时驱动。 I2C 总线
    发表于 12-15 08:07

    I2C死锁的问题

    的应答,将SDA一直拉为低电平,直到SCL变为低电平,才会结束应答信号。 而对于I2C主设备来说,复位后检测SCL和SDA信号,如果发现SDA信号为低电平,则会认为I2C总线被占用,会一直等待SCL
    发表于 12-04 06:00

    深入剖析I2C协议

    I2C是由Philips开发的简单的双向两线总线,在深入浅出理解SPI协议中,我们区分了单工,半双工,全双工协议数据流向的区别,根据特征,I2C协议属于半双工协议(即同一时刻,数据单向流动)。此外
    的头像 发表于 08-21 15:10 3877次阅读
    深入剖析<b class='flag-5'>I2C</b>协议

    I2C总线通信,为什么要进行电气隔离?

    I2C总线采用双向二线制,支持多主机多从机通信,具备高可靠性、抗干扰能力强,广泛应用于嵌入式系统中。
    的头像 发表于 08-11 11:04 2660次阅读
    <b class='flag-5'>I2C</b><b class='flag-5'>总线</b>通信,为什么要进行电气隔离?