稳定可靠的I2C通信的设计计算

发布者:yunhui最新更新时间:2014-02-17 来源: elecfans关键字:I2C通信  存储器技术  总线状态 手机看文章 扫描二维码
随时随地手机看文章

  许多系统需要可靠的非易失性存储,对于这些系统,可选择EEPROM存储器技术。EEPROM技术具有稳定可靠的架构,供应商较多,并且经过了多年的改进。EEPROM器件可用于各种工业标准串行总线,包括I2C™、SPI、Microwire和UNI/O®总线。其中,I2C总线在单片机和其他芯片组中具有广泛的硬件支持,并且信号传递方式简单,可采用极小的硅片有效实现,因此占据了非易失性存储器市场约70%的份额。但是,I2C总线拓扑要依赖于阻值合适的上拉电阻才能实现稳定可靠的通信。电阻值选择错误不仅会造成电能浪费,还可能导致总线状态和传输过程由于噪声、温度变化、工作电压变化以及器件间的制造差异而出错。

  I2C是二线同步总线,使用总线主器件SCL线上产生的信号作为时钟。SDA线用于双向数据传输。当时钟处于特定状态时可修改数据线,以指示传输的开始和停止,从而避免使用更多的线。I2C总线以集电极开路输出为基础,其中,器件可通过接地晶体管拉低线的电平,如图1所示。这样便可轻松对总线控制进行仲裁,从而在一条数据线上实现双向通信以及多主器件支持。如图1所示,每条线都有一个外部电阻连接至Vdd,该电阻可在释放总线或总线空闲时拉高线的电平。

  

  图1 I2C™总线拓扑

  确定上拉电阻值(Rp)时需要考虑三个因素:

  • 电源电压(Vdd)

  • 总线总电容(CBUS)

  • 高电平总输入电流(IIH)

  以下面的条件为例计算理想的上拉电阻值:

  • 电源电压(Vdd)为5V

  • 时钟频率为400kHz

  • 总线电容为100pF

  电源电压(Vdd)

  I2C规范将低于VIL或低于电源电压30%的电压定义为逻辑低电平,同样,将高于VIH或高于电源电压70%的电压定义为逻辑高电平,如图2所示。这两个电平之间的电压属于不明确的逻辑电平。实际上,引脚会将该范围内的电平读为逻辑高电平或逻辑低电平,但在器件间可能不同,因为温度、电压、噪声源和其他环境因素会影响逻辑电平。

  

  图2 指定为逻辑高电平和逻辑低电平的电压电平

  电源电压限制了可允许总线拉低的最小Rp值。过强的上拉会阻止器件充分拉低线的电平,导致无法确保逻辑低电平能被检测到。这是由上拉电阻与接地晶体管的导通电阻之间形成的分压器产生的,如图3所示。通常不会指定晶体管的导通电阻。相反,会给定使晶体管上的电压降低于输出逻辑低电压电平(VOL)的最大灌电流(IOL)。使用欧姆定律得出公式1。[page]

  

  图3 集电极开路拓扑和等效电路

  对于Microchip的I2C EEPROM器件,规定在IOL为3mA时,VOL最大为0.4V,其他制造商的器件的范围与其相似。

  公式1:允许总线电压拉低的最小上拉电阻。

  MM1320030411_opt.jpeg

  MM1320030471_opt.jpeg

  MM1320030532_opt.jpeg

  如果总线上有多个器件,最小Rp由灌电流最低的器件决定。

  总线总电容(CBUS)

  在SCL和SDA线上,所有引脚、连接、PCB走线和导线都会引入电容。这些电容结合在一起称为总线电容,对于长走线和长连接来说,总线电容可能很大。集电极开路拓扑需要外部电阻才能在总线释放时拉高线的电平。上拉电阻(与总线电容耦合)具有一个RC时间常数,该常数限制了上升时间。随着时钟频率的增加,该常数愈发重要,因为需要更少的时间升高线的电平。如果所选电阻值过高,线的电平在下一次拉低之前可能无法上升到逻辑高电平。对于一条总线上具有多个器件的设计(通常具有较大的总线电容)来说,这是重要的考虑因素。

  总线电容可通过PCB走线长度和引脚分布电容计算,也可以使用电容探头或智能镊子量表进行测量。如果不能准确计算或测量总线电容,应高估最坏情况读数以提供安全的最大电阻值。

  公式2是用于确定充电电容负载两端电压(与时间成函数关系)的一般公式。这可以计算在特定上拉电阻和总线电容下,总线电压上升到特定值所需的时间。

  公式2:通过电阻对电容进行充电的一般公式。

  MM1320031064_opt.jpeg重新排列MM1320031165_opt.jpeg

  之后,我们可计算电压上升至VIL的时间(T1)、上升至VIH的时间(T2)以及精确计算这两个电平之间的时间(TR),如图4所示。由于VIL和VIH都是由Vdd产生的,因此该公式与电源电压无关,因为Vdd项已抵消。

  

  图4 逻辑低电平转换为逻辑高电平的充电时间

  求解MM1320031367_opt.jpeg

  求解MM1320031431_opt.jpeg

  MM1320031494_opt.jpeg

  各种工作电压的最大上升时间由I2C标准指定,并通过上拉电阻确定。根据该时间和总线电容,我们可以计算允许的最大上拉电阻(Rp)。当电压为5V,时钟频率为400kHz时,给定总线电容CBUS为100pF,则规定的最大上升时间(TR)为300ns。

  公式3:符合I2C上升时间标准的最小上拉电阻。

  missing image fileMM1320031621_opt.jpeg

  missing image fileMM1320031673_opt.jpeg

  missing image fileMM1320031703_opt.jpeg

  高电平总输入电流(IIH)

  即使没有器件拉低线的电平,线仍处于逻辑高电平时,电流仍会继续流过上拉电阻。该电流由总线上器件的数字输入的泄漏产生,也可能是质量较差的PCB材料以及焊接残留物所导致。其中一些因素是无法预见的,但采用高质量材料和良好的制造工艺时,输入引脚泄漏是主要原因。[page]

  根据图2,没有器件拉低总线电平时,线的电平需要高于VIH才能被视为逻辑高电平。泄漏电流会限制Rp的最大值,这样其两端的电压降不会阻止线的电平被拉高至VIH以上。对于VIH规范,还应谨慎留出一些保护裕量,以防止噪声尖峰将电压拉低至VIH电平以下。要在高噪声环境下稳定工作,I2C规范建议采用0.2 Vdd作为高出VIH的适当裕量。

  公式4:逻辑高输入电平上的额外裕量。

  MM1320031871_opt.jpeg

  MM1320031856_opt.jpeg

  MM1320031901_opt.jpeg

  通常会在器件的数据手册中给出数字输入的泄漏电流,对于Microchip的I2C EEPROM器件,最大输入泄漏电流(IlIEE)为1µA。组成系统的最少元件是单片机I2C主器件和I2C从器件。对于本例,采用一个输入泄漏电流(IlIMCU)为1µA的单片机和四个I2C EEPROM器件,允许100%裕量,IIH为10µA。

  公式5:已定义总线的引脚泄漏产生的泄漏电流。

  MM1320032069_opt.jpeg

  MM1320032141_opt.jpeg

  MM1320032178_opt.jpeg

  应用欧姆定律,我们可以确定符合这些规范的Rp最大值。

  公式6:确保逻辑高电平的最小上拉电阻值。

  missing image fileMM1320032379_opt.jpeg

  missing image fileMM1320032431_opt.jpeg

  missing image fileMM1320032458_opt.jpeg

  电阻值计算

  通过计算电源电压、总线电容和泄漏电流,我们可以得出RP值的范围。

  missing image fileMM1320032515_opt.jpeg

  missing image fileMM1320032544_opt.jpeg

  missing image fileMM1320032577_opt.jpeg

  可以忽略由泄漏电流产生的 50KΩ(最大值),因为总线电容起主导作用。因此,可接受的电阻值的范围为:

  missing image fileMM1320032646_opt.jpeg

  设计人员应选择范围中间附近的值,以尽可能提供较大的保护带。对于本例,2.2KΩ的上拉电阻较为理想。

  总线速度与功耗

  当提高总线速度或存在较大总线电容时,必须减小上拉电阻。阻值较低的电阻会导致电流消耗增加,因为总线上的每个逻辑低电平都会产生对地通路,从而对功耗造成负面影响。快速完成任务并使系统恢复到低功耗空闲状态,与较高总线速度要求所产生的额外电流消耗存在矛盾,总线速度可成为两者之间的权衡因素。对于功耗预算非常低的应用,SPI可能是更合适的总线协议,因为其使用驱动线路,而不是集电极开路。

关键字:I2C通信  存储器技术  总线状态 引用地址:稳定可靠的I2C通信的设计计算

上一篇:基于8位单片机实现电机和PFC控制
下一篇:MCU快速编程框架

推荐阅读最新更新时间:2024-03-16 13:35

模拟I2C总线多主通信研究与软件设计
摘要:介绍模拟I2C总线的多主节点通信原理,并提出一种新的实现方法。这种采用延时接收比较来实现仲裁的方法,可使不具有I2C接口的普通微控制器(MCU)能够实现模拟I2C总线的多主通信,同时对I2C总线的推广起到了积极作用。 关键词:模拟I2C总线 仲裁 多主通信   I2C总线(Inter IC BUS)是Philips公司推出的双向两线串行通信标准。由于它具有接口少、通信效率高等优点,现已得到广泛的应用\ 。它除了可以进行简单的单主节点通信外,还可以应用在多主节点的通信系统中。在多主节点通信系统中,如果两个或者更多的主节点同时启动数据传输,总线具有冲突检测和仲裁功能,保证通信正常进行并防止数据破坏。现在许多微控制器(MCU)都
[工业控制]
带你展望六大“未来式”存储器技术趋势
对神经形态计算的浓厚兴趣刺激人们研发出一系列全新的存储设备,这些设备可以复制生物神经元和突触功能。最近,一篇回顾该领域现状的论文对六种最有前景的技术进行了盘点和解读。 这篇题为“用于神经形态计算的新兴存储器件”的论文发表在1月份的《先进材料技术》(Advanced Materials Technologies)上。论文中,作者阐述了摆脱晶体管和冯·诺依曼架构转而采用与尖峰神经网络更紧密结合的技术的优势,尖峰神经网络是神经形态计算的基础。论文的目的是在神经形态计算中找出比CPU、GPU、DRAM和NAND等传统设备更快、更节能的设备。 论文作者盘点和介绍的六种存储器件包括电阻式记忆存储器(ReRAM)、扩散式忆阻器、相
[嵌入式]
带你展望六大“未来式”<font color='red'>存储器</font>的<font color='red'>技术</font>趋势
超低功耗CBRAM存储器技术 或能加速IoT应用发展
  属于非挥发性 存储器 的快闪 存储器 (flash memory)过去在智能手机、平板电脑等市场需求的带动下,快闪 存储器 产业快速成长,然随着快闪存储器技术逐渐濒临尺寸与性能极限,各式新存储器技术陆续浮上台面,导电桥式随机存取存储器(conductive- bridging RAM; CBRAM )就是相当被看好的接班技术之一。下面就随网络通信小编一起来了解一下相关内容吧。   The Daily Reckoning网站报导,过去几10年来,半导体技术的重大进展多是来自于微缩,然随着每次的微缩,快闪存储器都会变得更不可靠,且这种以电荷储存为基础的存储器技术也会变得更加耗电,对于正在起飞的物联网(IoT)应用而言,恐怕还得仰
[网络通信]
热门资源推荐
热门放大器推荐
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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