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

为什么需要使用开漏输出

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

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

为什么要上拉电阻

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

上拉电阻对I2C信号的影响

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

相关推荐
星辰pid6 小时前
STM32控制四自由度机械臂(SG90舵机)(硬件篇)(简单易复刻)
stm32·单片机·嵌入式硬件·机械臂
威桑7 小时前
STM32 专有名词缩写整合
stm32·单片机·嵌入式硬件
星源~8 小时前
tree 命令集成到 Git Bash:可视化目录结构的指南
git·单片机·物联网·嵌入式·项目开发
SKYDROID云卓小助手9 小时前
无人设备遥控器之自动调整编码技术篇
人工智能·嵌入式硬件·算法·自动化·信号处理
所念皆星海9119 小时前
图灵完备之路(数电学习三分钟)----数据选择器与总线
嵌入式硬件·通信·数电
智者知已应修善业11 小时前
【51单片机节日彩灯控制器设计】2022-6-11
c语言·经验分享·笔记·单片机·嵌入式硬件·51单片机
开-悟11 小时前
嵌入式编程-使用AI查找BUG的启发
c语言·人工智能·嵌入式硬件·bug
Wangshanjie_9813 小时前
【STM32】-串口通讯
stm32
许白掰13 小时前
【stm32】HAL库开发——CubeMX配置RTC,单片机工作模式和看门狗
stm32·单片机·嵌入式硬件·学习·实时音视频
DIY机器人工房14 小时前
0.96寸OLED显示屏 江协科技学习笔记(36个知识点)
笔记·科技·stm32·单片机·嵌入式硬件·学习·江协科技