PWR休眠模式和代码示例

来源: 电子工程世界
新闻行业新闻

2.1定义

在睡眠模式下,CPU 时钟关闭并且对其他时钟或模拟时钟源没有影响。当中断/事件发生时,所有外设继续运行并唤醒 CPU。


2.2配置休眠模式

2.2.1 STM32CubeMX配置

系统时钟设置为 80 MHz。
 

poYBAGQb8o2AbQ5_AADrpyBLCHE672.png

EXTI 线通过 PC13 连接到用户按钮。

LED2 连接到 PA5 引脚。

2.2.2代码配置

从 EXTI 入门[1]打开项目。

打开 main.c

添加进入睡眠模式的功能。

/* 无限循环 */ /* USER CODE BEGIN WHILE */while ( 1 )

{

/* USER CODE END WHILE */ /* 用户代码开始 3 */    

HAL_延迟(1000 );    HAL_SuspendTick ();    HAL_PWR_EnterSLEEPMode ( PWR_MAINREGULATOR_ON , PWR_SLEEPENTRY_WFI );  

HAL_ResumeTick (); } /* 用户代码结束 3 */

将所有GPIO设置为模拟状态以降低功耗如下图所示:

pYYBAGQb8o6AYilyAAGbpCS1sU8918.png


文章来源于: 电子工程世界原文链接

本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。