一点点0321 发表于 2025-3-3 20:36

STM32如何配置低功耗模式?

在STM32中,如何配置Sleep、Stop和Standby模式以降低功耗?

公羊子丹 发表于 2025-3-4 07:41

STM32 的低功耗模式挺多的,具体要看你的应用需求,比如 Sleep 适合短时低功耗,Standby 适合长时间待机。

周半梅 发表于 2025-3-4 07:43

低功耗模式下唤醒方式很关键,你打算用哪种方式唤醒?外部中断、RTC 还是其他方式?

帛灿灿 发表于 2025-3-4 07:45

STM32WL 低功耗管理和普通 STM32 略有不同,特别是 LoRa 相关的部分,你是用于 LoRa 通信的吗?

童雨竹 发表于 2025-3-4 07:47

在 Stop 模式下,外设时钟基本都会关闭,唤醒后可能要重新初始化一些外设,这点要注意。

万图 发表于 2025-3-4 07:49

Standby 模式下掉电最彻底,但 SRAM 数据会丢失,如果有需要,可以用备份寄存器保存关键数据。

Wordsworth 发表于 2025-3-4 07:51

你有没有试过 HAL_PWR_EnterSTOPMode 或者 HAL_PWR_EnterSTANDBYMode?HAL 库里有相关的低功耗 API。

Bblythe 发表于 2025-3-4 07:53

低功耗模式下,不同的外设行为也会不一样,比如 UART 可能无法正常接收数据,你有考虑这个吗?

Pulitzer 发表于 2025-3-4 07:57

如果功耗要求特别严格,可以看看 CubeMX 的 Power Consumption Calculator,它能估算不同模式下的功耗。

Uriah 发表于 2025-3-4 08:00

有时候进入低功耗模式后,电流下降不明显,可能是某些外设没完全关闭,你可以试试逐步关闭外设来排查。

Clyde011 发表于 2025-3-4 08:02

STM32WL 专门针对低功耗优化,和普通 STM32 不太一样,特别是 LoRa 相关的低功耗特性,你可以看看 ST 官方的 LoRa 例程。

故意相遇 发表于 2025-4-23 01:23

在 STM32 微控制器中,配置 Sleep(睡眠)、Stop(停止) 和 Standby(待机) 模式是降低功耗的常用方法。这些模式通过关闭部分或全部外设、时钟和电源域来减少功耗

风凉 发表于 2025-4-23 02:35

选择睡眠模式:调用 HAL_PWR_EnterSLEEPMode() 函数。或者通过设置 SCB->SCR 寄存器的 SLEEPDEEP 位为 0

西洲 发表于 2025-4-23 03:42

我觉得你要用低功耗模式一定要确保中断或事件能够唤醒 CPU

白马过平川 发表于 2025-4-23 04:43

值得注意的是,睡眠模式下,外设继续运行,功耗相对较高

捧一束彼岸花 发表于 2025-4-23 05:31

Stop 模式具有更低功耗:关闭 CPU 和大部分外设时钟,但保留 RAM 和寄存器状态

她已醉 发表于 2025-4-23 06:26

你可以调用 HAL_PWR_EnterSTOPMode() 函数。来实现低功耗模式设置

失物招領 发表于 2025-4-23 07:29

其实在停止模式下,外设时钟被关闭,需在唤醒后重新初始化外设。如果使用低功耗稳压器,需确保其稳定性

将爱藏于深海 发表于 2025-4-23 08:27

在进入低功耗模式前,确保所有外设已正确配置,避免唤醒后出现异常

春日负喧 发表于 2025-4-23 09:35

确保唤醒源配置正确,否则 MCU 将无法唤醒
页: [1] 2 3
查看完整版本: STM32如何配置低功耗模式?