标题: stm32f103单片机停止模式如何降低功耗 [打印本页]

作者: 雪落秋霜    时间: 2023-12-5 11:06
标题: stm32f103单片机停止模式如何降低功耗
最近在研究低功耗,整个电路板上电后一测,停止模式下整板功耗也有30ma,高的吓人,赶紧从头一个个加外围电路测。发现大头是ldo静态电流过大,不过单片机本身休眠电流也不小。用万用表测量,不是像理想中27mA跳变到14uA,会慢腾腾往下走,有时候停在130uA,有时候会经过较长时间,稳定在30uA,也有时候会在60uA。一天早中晚几次上电都有差别。这个不明原因,和万用表有关吗?

使用的是hal库
HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON,PWR_STOPENTRY_WFI);//进入休眠停机模式
且在cubemx里选上了Set all free pins as analog (to optimize the power consumption) //将未使用引脚设为模拟输入

在查阅资料时候,有些疑惑:
1.有些人使用的不是hal库+cubeMX,似乎是标准库。他们在进入休眠前将引脚功能全部禁用,仅保留需要的。
   我是否需要这么操作?是否有相关的hal库函数?在唤醒后除了初始化时钟,还要把禁用的全部初始化吗?
2.有人提出引脚上下拉会消耗电流。
   所有IO管脚,如果高阻状态端口是高电平,就设成上拉输入,如果高阻状态是低电平,设成下拉输入,如果高阻是中间状态,设成模拟输入。
   我在设置时候勾选了模拟输入,那些引脚还要额外设置吗?在一个个加外围电路过程中,部分引脚如果悬空未连接,设置了上下拉也会耗电吗?
3.有提出将晶振脚和SW脚设成普通io的
   这两点听着有点离谱,能大幅降低功耗吗

作者: 鱼之跃    时间: 2023-12-5 15:29
硬件设计需要结合考虑
作者: 雪落秋霜    时间: 2023-12-5 16:22
换了个万用表,裸单片机功耗直接到4ma了。。。

作者: Hephaestus    时间: 2023-12-5 18:06
我劝你还是看《Cortex-M3权威指南》,这个问题不是STM32的,而是CM3的。
作者: 雪落秋霜    时间: 2023-12-6 19:20
查了一下,确实是万用表问题。进入休眠前设置pin到模拟输入,能降低不少。问题是使用HSI会带来24ua功耗,这个怎么解决




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1