当前位置:首页 > 技术学院 > 技术前线
[导读]STM32内部的上拉其实是一个弱上拉,也就是说通过此上拉电阻输出的电流很小,如果想要输出一个大电流。那么就需要外接上拉电阻了,其实就是增加导线的输出电流。

开启上拉电阻或下拉电阻的作用

STM32内部的上拉其实是一个弱上拉,也就是说通过此上拉电阻输出的电流很小,如果想要输出一个大电流。那么就需要外接上拉电阻了,其实就是增加导线的输出电流。

下拉电阻情况相反,让STM32的CPU引脚输出低电平,结果由于后续电路影响输出的低电平达不到GND。所以接个下拉电阻,其实就是为了降低导线的输出电流。

另外当上下拉电阻都不开启,此时是浮空模式,引脚的电压是不确定的,此模式下的管脚电压会时不时改变。

所以为了防止引脚悬空,产生积累电荷、静电荷,造成电路不稳定。一般情况下,我们都会给引脚设置成上拉或者下拉模式,使它有一个确定的默认电平状态。

以上拉电阻举例,在STM32刚上电的时候,芯片引脚电平是不确定的。特别引脚是接按键的时候,必须给他个确定的电平。下拉电阻的作用就是,强制让电平保持在低电平。

STM32中的GPIO及其上/下拉电阻功能

在STM32微控制器中,GPIO(General Purpose Input/Output,通用输入输出)是一个至关重要的功能模块。它不仅提供了灵活的输入输出能力,还支持配置上拉和下拉电阻,以实现对输入信号的预处理和稳定。通过合理配置GPIO的上/下拉电阻,用户可以有效地控制信号的电平状态,从而满足不同的电路需求。


浅析STM32中GPIO的上/下拉电阻

以STM32中的GPIO为例,其结构如图所示。关于GPIO的工作原理,可以参考相关文章进行详细了解。在GPIO的结构图中,我们可以看到上拉和下拉电阻上各有一个开关,通过配置这些开关,我们可以控制引脚的默认电平。具体来说,开启上拉电阻将使引脚默认电压为高电平,而开启下拉电阻则会使引脚默认电压为低电平。若上拉和下拉电阻都不开启,则引脚处于浮空模式,其电压状态是不确定的。

为了确保引脚的稳定性和避免电路不稳定,我们通常会将引脚配置为上拉或下拉模式。这样,即使在没有外部输入信号的情况下,引脚也能保持一个确定的默认电平状态。例如,在STM32刚上电时,芯片引脚电平是不确定的。特别是在引脚接按键时,必须给予它一个确定的电平。此时,下拉电阻的作用就至关重要,它能确保电平保持在低电平状态,从而防止引脚悬空和积累电荷的问题。

另外,根据拉电阻的阻值大小,我们可以将其分为强拉或弱拉。阻值越小,表示电平能力越强,同时也能增强抵抗外部噪声的能力,但相应的功耗也会有所增加。

按键的上拉电阻,常见的选择有3k、7k、1k以及10k等。然而,电阻值越小,意味着通过的电流越大,同时功耗也会相应增加。通常,10k的上拉电阻所提供的电流是大多数芯片能够正常识别的引脚电流范围。若电阻值过大,导致电流过小,芯片可能无法正常识别引脚状态。因此,10k的电阻值被视为一种折中的选择。这里的电流大小,可以通过简单的公式VDD/R拉电阻进行计算得出。

入门题:1)什么是开漏输出,什么是推挽输出?

2)芯片空余的引脚如何处理,接地?接电源?悬空?

进阶题:软件工程师说按键按下,CPU一直检测不到低电平,一直都是高电平,一口咬定是硬件问题,实测CPU的引脚确实也是3V左右的高电平。请问是软件问题还是硬件问题,原因是什么?

高级题:控制器输出0~10V电压,控制风扇的转速。目前该控制器存在这个问题:控制一上电,端口处就会输出400mS/5V左右的脉冲,导致上电瞬间风扇突然转动,客户不可接受,需整改。怎么解决?

骨灰题:下项目组一共开发了2款电表,高端版和低端版,主板是完全一样的,区别在于高端版带显示器,低端版不带显示器。两款设备在做EMC的ESD测试中,低端版设备做完实验后无法启动,高端版则正常,请问可能的原因在哪里?

一、GPIO的基础知识GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。GPIO口一是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。几乎所有的CPU、MCU都会具GPIO功能,以下是作者统计的GPIO的种类,几乎囊括了所有的MCU的GPIO类型。

1) 输入浮空:即输入端口既不上拉也不下拉,电平由外部输入决定;这种模式较少,一般模拟量输入、按键扫描输入使用该模式。

2) 输入上:即输入端口配置一个电阻到电源端,该电阻可以使芯片内置,也可以是外部电阻。

3) 输入下:即输入端口配置一个电阻到地,该电阻可以使芯片内置,也可以是外部电阻。

4) 模拟输入:模拟量信号输入,需要芯片内部支持AD转换功能才可以。

5) 开输出: 漏极开路输出(OD) 和集电极开路输出(OC)十分相似,都是无法输出高电平,只能输出低电平,需要高电平时需要外接上拉电阻。

6) 推挽式输出:推挽输出既可以输出高电平也可以输出低电平,无需外配置电阻。

7) 推挽式复用功能:即推挽式输出和输入功能,使用时需要配置具体使用哪一种。

8) 开复用功能:即开漏输出和输入功能,使用时需要配置具体使用哪一种。

很多人看到上面一堆IO引脚的功能种类,肯定都是云里雾里的。先不急,看完下面这张“葵花宝典”,可以肯定市面上99%的CPU的GPIO功能都囊括了,拿着这张表,硬件工程师可以说服驱动工程师,驱动工程师可以忽悠软件工程师,就可以责任清晰,和平共处了。

二、上下拉电阻作用1) 上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!下拉同理,下拉就是将不确定的信号通过一个电阻嵌位在低电平!电阻同时起限流作用!

2) 上拉是对器件注入电流,下拉是输出电流。

3) 弱强只是上拉电阻的阻值不同,没有什么严格区分。

4) 对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。

5) 一般作单键触发使用时,如果IC本身没有内接电阻,为了使单键维持在不被触发的状态或是触发后回到原状态,必须在IC外部另接一电阻。

6) 数字电路有三种状态:高电平、低电平、和高阻状态,有些应用场合不希望出现高阻状态,可以通过上拉电阻或下拉电阻的方式使处于稳定状态,具体视设计要求而定!

7) 一般说的是I/O端口,有的可以设置,有的不可以设置,有的是内置,有的是需要外接。

8) 上拉电阻是用来解决总线驱动能力不足时提供电流的。一般说法是拉电流,下拉电阻是用来吸收电流的,也就是我们通常所说的灌电流。

9) 在I/O引脚悬空时,接电阻就是为了防止输入端悬空,从而提高系统的抗干扰能力。减弱外部电流对芯片产生的干扰。

10) 通过上拉或下拉来增加或减小驱动电流。

11) 上下拉电阻改变电平的电位,常用在TTL-CMOS匹配。

12) 上拉电阻可以为OC门或者OD门提供电流。

上下拉电阻阻值的大小

根据拉电阻的阻值大小,可以分为强拉或弱拉(weak pull-up/down)。拉电阻阻值越小则表示电平能力越强,为强拉,可以抵抗外部噪声的能力也越强,相应的功耗也越大。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭