当前位置: 首页 > news >正文

服务器硬件电路设计之I2C问答(一):为什么I2C总线要加上拉电阻?

一、原因

I2C 总线的 SDA(数据线)和 SCL(时钟线)均为开漏输出结构,自身无法输出高电平,仅能拉低电平。

当总线上的器件不驱动总线时,线路需保持高电平以维持空闲状态。上拉电阻可将总线默认拉至高电平,确保通信初始化和空闲时的电平稳定。

此外,多器件通信时,上拉电阻能避免总线电平冲突,保证数据传输的可靠性。

二、I2C 总线上拉电阻的选择与布局设计

上拉电阻选择的影响
  1. 信号完整性与通信速度
    上拉电阻的阻值直接影响总线的上升时间。根据公式 tr​=0.847×Rp​×Cbus​,电阻越大,上升时间越长。例如,标准模式(100kHz)下若总线电容为 400pF,4.7kΩ 电阻的上升时间约为 1.6μs,而 10kΩ 电阻则增至 3.4μs,可能超出协议规定的 1μs 上限。高速模式(400kHz)需更小阻值(如 2.2kΩ)以确保上升时间 < 300ns。

  2. 功耗与驱动能力
    电阻过小将导致灌电流过大。例如,5V 系统中若使用 1kΩ 电阻,灌电流可达 (5V−0.4V)/1kΩ=4.6mA,可能超过器件的最大驱动能力(通常 3mA),导致低电平电压升高(>0.4V)或损坏端口。因此,最小电阻需满足 Rmin​=(VDD​−VOL​)/IOL​,其中 VOL​≤0.4V,IOL​ 为器件最大拉电流。

  3. 总线电容与拓扑限制
    总线电容 Cbus​ 由 PCB 走线、器件引脚等构成。例如,10cm 走线约引入 20pF 电容,每个从机引脚约 5-10pF。若 Cbus​ 超过 400pF(标准模式),即使使用 4.7kΩ 电阻,上升时间也会超标。此时需减少负载或改用更低阻值。

上拉电阻的布局策略
  1. <

http://www.xdnf.cn/news/1260523.html

相关文章:

  • Vue框架进阶
  • DM8数据库服务正常,但是登录报错 [-70019]:没有匹配的可登录服务器
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘huggingface_hub’问题
  • proteus实现简易DS18B20温度计(stm32)
  • 《论文阅读》传统CoT方法和提出的CoT Prompting的区分
  • [链表]142. 环形链表 II
  • C# GUI程序中的异步操作:解决界面卡顿的关键技术
  • OpenCV 3 终极指南:创建炫酷自定义窗口与图像显示的艺术
  • ctfshow_萌新web9-web13-----rce
  • 自动驾驶--车辆动力学模型
  • linux安装mysql8.0,二进制码安装
  • SpringCloud(4)-多机部署,负载均衡-LoadBalance
  • 数据持久化 —— `chrome.storage` 的记忆魔法
  • Java学习进阶--集合体系结构
  • 跨域解决方案
  • Unity基于Recoder的API写了一个随时录屏的工具
  • Linux Shell:Nano 编辑器备忘
  • ConcurrentDictionary 详解:.NET 中的线程安全字典
  • simulink tlc如何通过tlc写数据入文件
  • Spring Boot + Angular 实现安全登录注册系统:全栈开发指南
  • 深入理解 Java AWT Container:原理、实战与性能优化
  • 使用Prometheus + Grafana + node_exporter实现Linux服务器性能监控
  • 【3d61638 渍韵】001 png pdf odt 5与明天各种号(虚拟文章スミレ数据)
  • 从零开始构建【顺序表】:C语言实现与项目实战准备
  • 【前端】纯代码实现Power BI自动化
  • 破界之光:DeepSeek 如何重构AI搜索引擎的文明坐标 || #AIcoding·八月创作之星挑战赛#
  • 点播服务器
  • Day10 SpringAOP
  • Linux 学习 ------Linux 入门(上)
  • DuoPlus支持导入文件批量配置云手机参数,还优化了批量操作和搜索功能!