欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > STM32 低功耗模式 睡眠、停止和待机 详解

STM32 低功耗模式 睡眠、停止和待机 详解

2025/12/14 3:44:37 来源:https://blog.csdn.net/qq_38072731/article/details/140181725  浏览:    关键词:STM32 低功耗模式 睡眠、停止和待机 详解

目录

1.睡眠模式(Sleep Mode)

2.停止模式(stop mode)

3.待机模式(Standby Mode)


STM32提供了三种低功耗模式,分别是睡眠模式(Sleep Mode)、停止模式(Stop Mode)和待机模式(Standby Mode),我们在做一些电池供电项目的时候,低功耗模式显得尤为重要。

模式名称进入唤醒唤醒后位置对 1.2V域时钟的影响对 VDD 域时钟的影响功耗
睡眠模式WFI任意中断睡眠位置开始执行CPU/CLK 关闭对其它时钟或模拟时钟源无影响偏高
WFE唤醒事件
停止模式PDDS 和LPDS 位+SLEEPDEEP 位+WFI或 WFE任意 EXTI 线(在 EXTI寄存器中配置,内部线和外部线)停止位置开始执行,但系统时钟变为HSI(内部高速时钟),需要重新配置时钟所有 1.2 V域时钟都关闭HSI 和HSE 振荡器关闭中等
待机模式PDDS 位+SLEEPDEEP 位+ WFI 或 WFEWKUP 引脚上升沿、RTC闹钟(钟 A 或闹钟B)、BTC 唤醒事件、RTC 入侵事件、RTC 时间戳事件、NRST 引脚外部复位、IWDG 复位相当于复位,系统重新开始运行所有 1.2 V域时钟都关闭HSI 和HSE 振荡器关闭最低

1.睡眠模式(Sleep Mode)

睡眠模式下,只有STM32的内核时钟被关闭,而外设时钟仍然保持运行,所有的I/O引脚都保持它们在运行模式时的状态,WFI模式下可以通过任意中断唤醒,WFE模式下可以任意唤醒事件唤醒,唤醒后程序继续睡眠位置往下运行。

void enter_sleep_mode(void){HAL_SuspendTick();//关闭系统systick中断,防止睡眠被systick中断打断HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON, PWR_SLEEPENTRY_WFI);//进入WFI睡眠模式HAL_ResumeTick();//打开系统systic中断
}

上面是进入睡眠模式的代码,因为系统存在1ms一次的systick,所以要将其手动关闭,等待睡眠模式被唤醒以后再恢复。

2.停止模式(stop mode)

停止模式下,内核时钟和外设时钟都被关闭,但内核的1.8V供电区域仍然保持供电,SRAM和寄存器中的内容得以保留,IO口状态也可保持,可以通过任意一个外部中断来唤醒STM32,唤醒后需要重新初始化时钟和外设,当一个中断或唤醒事件导致退出停止模式时,HSI(高速内部时钟)通常被选为系统时钟。

void enter_stop_mode(void){HAL_PWR_DisableWakeUpPin(PWR_WAKEUP_PIN1);//禁用唤醒引脚__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);//清除唤醒标志HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);//启用唤醒引脚HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON,PWR_STOPENTRY_WFI);//进入停止模式
}

 进入停止模式之前先要重置一下唤醒引脚,注意停止模式结束以后,外设时钟被关闭,只能选用HSI重新初始化时钟和外设。

3.待机模式(Standby Mode)

待机模式是功耗最低的模式,关闭了所有的时钟,并关闭了内核的1.8V供电,除了电源控制/状态寄存器和备份寄存器之外,其他所有的寄存器和RAM数据都会丢失,可以通过唤醒引脚(如PA0)的上升沿、RTC(实时时钟)闹钟中断,或者复位操作来唤醒STM32,唤醒后,STM32相当于复位,程序将从复位地址开始执行。

由于待机模式被唤醒后相当于复位,从main函数重新初始化,所以不用再做特殊操作。

大家可以根据自己的项目需求去选择合适的低功耗模式。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词