STM32 各输入输出模式的区别,特点?怎么样判断在什么情况下用哪种输入输出方式呢?
1个回答
展开全部
*Input floating: 引脚悬空,就是没有上拉也没有下拉电阻的意思,针对外部有上拉器件使用,节省能耗,做AD输入时也可以这样设置。
*Input pull-up: 芯片输入有内部有上拉电阻(电阻接VCC)
*Input pull-down: 芯片输入有内部下拉电阻(电阻接地)
*Analog input: 模拟输入,用于AD,比较器输入(我理解是跟floating一样,实际我没有用到这个方式)
*Output open-drain: 开漏输出,类似三极管集电极引出,就是输出没有上拉电阻,要外部供电,否则输出永远是“0”
例如:你需要点亮一颗LED,LED正极串电阻连接到VCC,负极接IO口时使用开漏输出。
如果LED正极接IO,负极接地的话,这颗LED永远也点不亮。
*Output push-pull: 推挽输出,输出引脚对VCC和对地各有一个MOS管,输出电流较大。
比如IIC总线的CLK线就需要用到推挽输出。
*Input pull-up: 芯片输入有内部有上拉电阻(电阻接VCC)
*Input pull-down: 芯片输入有内部下拉电阻(电阻接地)
*Analog input: 模拟输入,用于AD,比较器输入(我理解是跟floating一样,实际我没有用到这个方式)
*Output open-drain: 开漏输出,类似三极管集电极引出,就是输出没有上拉电阻,要外部供电,否则输出永远是“0”
例如:你需要点亮一颗LED,LED正极串电阻连接到VCC,负极接IO口时使用开漏输出。
如果LED正极接IO,负极接地的话,这颗LED永远也点不亮。
*Output push-pull: 推挽输出,输出引脚对VCC和对地各有一个MOS管,输出电流较大。
比如IIC总线的CLK线就需要用到推挽输出。
追问
能在讲讲开漏输出吗?还是没太搞懂~~~怎么外部供电
追答
开漏就是MOS管的漏极是开路状态,假设你对MOS管不是很熟,我就用三极管跟你说吧。
开漏好比NPN三极管的集电极是开路的,怎么说呢,IC控制三极管基极,发射极接地,而把集电极空出来。
好了,你这时候给三极管基极加电,三极管导通了是不?
如果你在集电极接一个LED到电源负极,LED有可能亮吗?
反过来,你的LED接在电源正极跟IO口上就不同了,基极给电让三极管导通的时候,电源从正极到LED到IO口,由于三极管是导通的,你的LED就亮了,明白了吗?
象LM393之类的比较器很多都是开漏输出的,以后遇到此类应用的时候千万要记住。
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
STM32是一种由意法半导体(STMicroelectronics)公司设计和生产的单片机系列,广泛用于嵌入式系统、物联网(IoT)设备、汽车电子、工业自动化等领域。STM32具有以下优点:1. 低功耗:STM32单片机通常具有较低的功耗,...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询