原文地址:http://blog.csdn.net/tianshiyalin/article/details/24504539

asw1:

这个就要看你使用的单片机是否有标准的IIC标准接口了,如果你使用了标准的IIC接口,这个接口在使能的时候,引脚进入漏极开路模式,不过有一些单片机内部的上拉电阻可以使能,这样就省去了外部的上拉电阻,我用过AVR的,就是使能的内部的上拉电阻。但是如果是使用单片机的引脚模拟IIC协议的话,这个就得另说了,得看你的单片机引脚是否支持漏极开路模式或者上拉模式,不过一般推拉模式的输出引脚用在IIC里可能会有问题具体也没用过。

asw2:

1、根据I2C总线规范,总线空闲时两根线都必须为高
这是规定,动不了的,不然什么叫标准呢?其实所谓的这个神圣的标准也并不是多么邪乎,你想啊,只有是高的才能拉成低的,难道谁可以把低的拉成高的吗?所以这是之所以规定空闲时必须为高的一个原因,要是保持“低”的话,那是不可能成为“多主”总线的。
2、上拉电阻的问题;
其实各个I2C接口工作时只检测高、低电平,管你有没有什么上拉电阻呢!
但问题是,你要是直接接电源的来实现高的话,一旦其他器件拉低时岂不危险? 所以,这个上拉电阻有保护作用。如果你确信直接接电源没问题(比如有短路保护等,呵呵),也可以试一试,问题的关键是主器件要能正确的拉低或置高,从器件要能明确地区分高、低就可以了,这是问题的关键,当然,还有时序问题,不能混乱!
3、电阻大小的问题;
最直接的,牵涉到两方面的问题,首先是功耗的问题其次是速度的问题,二者是矛盾的!如果你想尽量提高速度,那么就牵涉到总线电容的问题,其实很容易理解,上拉电阻与总线的电容形成了RC,高速时将直接影响通讯!因为总线拉高时有个充电时间以及高电平的阀值,如果还没有充电到足以保证从器件可以识别的高电平的阀值时主器件就以为完成了一个总线动作的话,那么通讯肯定是不能进行的!
如果你想尽可能降低功耗,那么就要尽可能增大电阻以最大可能的减小电路各部分的消耗电流从而实现整体降低功耗!但不可能无限大,否则充电时间你会受不了的!

备注:

I2C的上拉电阻可以是1.5K,2.2K,4.7K, 电阻的大小对时序有一定影响,对信号的上升时间和下降时间也有影响,一般接1.5K或2.2K
I2C上拉电阻确定有一个计算公式:
Rmin={Vdd(min)-o.4V}/3mA
Rmax=(T/0.874) *c,   T=1us 100KHz, T=0.3us 400KHz
C是Bus capacitance
Rp最大值由总线最大容限(Cbmax)决定,Rp最小值由Vio与上拉驱动电流(最大取3mA)决定;
于是 Rpmin=5V/3mA≈1.7K(@Vio=5V)或者2.8V/3mA≈1K(@Vio=2.8V)
Rpmax的取值:参考周公的I2C总线规范中文版P33图39与P35图44
总的来说:电源电压限制了上拉电阻的最小值 ; 负载电容(总线电容)限制了上拉电阻的最大值
补充:在I2c总线可以串连300欧姆电阻RS可以用于防止SDA和SCL线的高电压毛刺
: I2c从设备的数量受总线电容,<=400pF的限制
做过I2C碰到过各种问题,多半是上拉电阻或者控制器时钟的问题。没上拉电阻或者上拉电阻过大,都会导致不稳定而出现寻址不到的问题。控制器时钟主频的话,主频667M八分频就可以

上拉电阻大小对i2c总线的影响相关推荐

  1. I2C走线技巧、及上拉电阻、电源电压、总线电容三者间的函数关系

    目录 I2C总线PCB布线注意事项: 博客其他文档可以学习:https://www.cnblogs.com/zhiqiang_zhang/ I2C总线线路的走线方式 I2C器件与I2C总线的接线方式 ...

  2. I2C上拉电阻到底多大

    I2C上啦电阻到底多大 1. I2C出现的问题 最近群里,由于大部分人都玩摄像头,在摄像头初始化,即I2C接口的初始化中,前前后后出现了很多问题,包括我自己.不能理解..如下部分群聊记录: 我在当时在 ...

  3. 上拉电阻与下拉电阻详解

    上拉电阻和下拉电阻有什么用? 1.提高驱动能力: 例如,用单片机输出高电平,但由于后续电路的影响,输出的高电平不高,就是达不到VCC,影响电路工作.所以要接上拉电阻.下拉电阻情况相反,让单片机引脚输出 ...

  4. 上拉电阻和下拉电阻作用、区别及应用

    上拉电阻和下拉电阻有什么用? 1.提高驱动能力: 例如,用单片机输出高电平,但由于后续电路的影响,输出的高电平不高,就是达不到VCC,影响电路工作.所以要接上拉电阻.下拉电阻情况相反,让单片机引脚输出 ...

  5. 上拉电阻、下拉电阻的使用场景

    参考: 记得诚电子设计 1. 上拉电阻 上拉,从字面意思就是往上面拉,数字电路中"上"指的是啥?指逻辑1,在电路设计中,逻辑1代表高电平.那把什么往上面拉呢,当然不会是电源,也不会 ...

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

    I2C总线为什么要接上拉电阻 1.根据I2C总线规范,总线空闲时两根线都必须为高: 这是规定,动不了的,不然什么叫标准呢?其实所谓的这个神圣的标准也并不是多么邪乎,你想啊,只有是高的才能拉成低的,难道 ...

  7. I2C上拉电阻取值问题

    漏极开路上拉电阻取值为何不能很大或很小? 如果上拉电阻值过小,Vcc灌入端口的电流(Ic)将较大,这样会导致MOS管V2(三极管)不完全导通(Ib*β<Ic),有饱和状态变成放大状态,这样端口输 ...

  8. I2C使用上拉电阻详解

    SDA使用上拉电阻? 设备的SDA中有一个三极管,使用开极/开漏电路(三极管是开极,CMOS管是开漏,作用一样),如下图: 真值表如下: 从真值表和电路图我们可以知道: 当某一个芯片不想影响SDA线时 ...

  9. I2C中为什么线与?为什么要有上拉电阻?

    文章目录 为什么采用漏极开路? 为什么要加上拉电阻? 为什么要线与? 总结全文 系列文章: <I2C总线(1)–数据传输格式与7位地址读写>: <I2C总线(2)–10位地址读写&g ...

最新文章

  1. linux r服务安装失败,R包:RCurl和curl包在Linux上安装失败
  2. php fastcgi,配置apache以fastcgi运行php
  3. SAP SADL和SAP Hybris DTO, 以及SAP C4C的transformation object
  4. python运行结果闪退_Pyhton TestCase运行闪退与失败,原因不详。。。
  5. JIRA 5.0.1 发布
  6. Quartz 之入门示例
  7. 【CSS】利用宽高比例的媒体查询
  8. 对预检请求的响应未通过访问控制检查
  9. vue+webpack绕过QQ音乐接口对host的验证
  10. 2021最新 武汉互联网公司
  11. 初学者,学哪一种3d模型设计软件比较好?
  12. 无线系列-无线通信频段与电波传播
  13. SSD固态硬盘重装win10系统 无法分区,gpt格式
  14. Spring MVC ajax请求
  15. 【JAVA作业】异常、随机数、List
  16. 极坐标弧长积分公式简单理解 极坐标求面积的公式,dθ 弧长积分公式,rd​原理; 极坐标弧积分
  17. 最好用的 6 款 Vue 实时消息提示通知(Message/Notification)组件推荐与测评
  18. Windows7自带截图工具没法保存
  19. scrcpy设置快捷键_Scrcpy投屏控制器下载|Scrcpy(安卓手机投屏神器)附使用教程 v1.16官方版...
  20. flex布局以及实现垂直居中

热门文章

  1. 智创未来 · 引领5G价值,广和通携5G AIoT创新应用亮相2022德国慕尼黑电子展
  2. 设置input里面的光标的位置
  3. 重新配置EM(单机)
  4. 项目团队如何有效沟通?
  5. fastjson深度源码解析- 序列化(一) - 序列化基础类型解析
  6. 历经五主而不衰的风流皇后:南朝萧皇后
  7. 仿新浪公益四色主题切换文章模板(齐博V7模板)
  8. iloc与loc区别
  9. jquery 下拉菜单
  10. D347周赛复盘:移除字符串中的尾随零+对角线上不同值的数量差