【STM32】I2C为什么要开漏输出和上拉电阻

为什么需要使用开漏输出

防止短路:假设使用推挽结构,多个设备挂在同一总线上,当存在某一设备将某一信号驱动为高电平,而其他设备驱动为低电平,会导致短路,导致器件损坏或降低寿命。对于开漏结构,任何设备都不能将信号线驱动为高电平。

线与:当总线上连接多个设备时,只要有一个设备输出低电平,那么整条总线便处于低电平状态,这时候的总线被称为占用状态,其他设备输出的高电平是无效的。

为什么要上拉电阻

开漏输出的特性就是只能输出低电平和高阻态(高阻态可以理解为通过很大的电阻把输出引脚和MCU芯片内部隔开)。因为每条线上需要使用一个外部的上拉电阻,在输出高阻态时,上拉电阻将总线上拉至高电平。

上拉电阻对I2C信号的影响

**对总线而言,上拉电阻越大,信号的上升时间就越长,通信速率就越低,反之亦然。**但电阻也并不是越小越好,阻值过小的话,总线低电平时电阻上的大电流会增加电路的功耗。

相关推荐
自由的好好干活39 分钟前
从0开始使用LabVIEW操作数据采集卡-概述和新建新建项目
嵌入式硬件·labview
一枚码农~3 小时前
STM32红外与LED控制实战
单片机·嵌入式硬件
Heavy sea3 小时前
STM32定时器(寄存器与HAL库实现)
stm32·单片机
路过羊圈的狼5 小时前
STM32的HAL库驱动ADS124S08进行PT100温度采集
stm32·嵌入式硬件·mongodb
李永奉5 小时前
51单片机-实现红外遥控模块教程
单片机·嵌入式硬件·51单片机
辛集电子6 小时前
【STM32】位带操作
stm32·单片机·嵌入式硬件
wei-dong-183797540086 小时前
嵌入式硬件工程师每日提问
嵌入式硬件·电源拓扑结构
MOS管-冠华伟业7 小时前
微硕WSF4012 N+P双沟MOS管,驱动汽车智能座椅“无感”升降气泵
单片机·嵌入式硬件
沐欣工作室_lvyiyi7 小时前
基于单片机的汽车防碰撞刹车系统(论文+源码)
单片机·嵌入式硬件·stm32单片机·汽车·毕业设计
点灯小铭7 小时前
基于51单片机宠物喂食系统设计
单片机·mongodb·毕业设计·51单片机·课程设计·宠物