PWR中Stop0、Stop1和Stop2模式介绍

控制/MCU

1815人已加入

描述

  停止模式实现最低功耗,同时保留 SRAM 和寄存器的内容。VCORE 域中的所有时钟都停止,PLL、MSI RC、HSI16 RC 和 HSE 晶体振荡器被禁用。LSE 或 LSI 可以保持运行。

  

 

PWR

 

  5.2 Stop0模式

  从 EXTI 入门[1]打开项目

  打开 main.c

  添加一个函数来挂起 Systick(SysTick 通常设置为每 1 毫秒引发一次中断)。

  添加进入Stop0模式的函数。

  添加一个函数以在唤醒时恢复 Systick。

  /* 无限循环 */

  /* USER CODE BEGIN WHILE */

  while ( 1 )

  {

  /* USER CODE END WHILE */

  /* 用户代码开始 3 */

  HAL_延迟(1000 );

  HAL_SuspendTick ();

  HAL_PWREx_EnterSTOP0Mode ( PWR_SLEEPENTRY_WFI );

  HAL_ResumeTick ();

  }

  /* 用户代码结束 3 */

  通过按下用户按钮使用 WFI 并退出 Stop0、Stop1 或 Stop 2 模式后,将执行处理程序中的代码。

  5.2.1编译烧写↑

  单击构建按钮

      点击运行按钮执行

 

    5.2.2测量电流消耗↑

  参考数据表[4],在 25°C 和 VDD = 3.6V 的 Stop0 模式下,电流消耗应为 113μA

  

 

PWR

 

  使用 STM32Cube Monitor-Power [5],我们测量了:

  

 

PWR

 

  5.3 Stop1模式

  Stop 1 提供最多数量的活动外设和唤醒源,唤醒时间较短但功耗高于 Stop 2。

  仅更改代码中的这一行:

  HAL_PWREx_EnterSTOP1Mode ( PWR_SLEEPENTRY_WFI );

  5.3.1编译烧写

  单击构建按钮

 

  点击运行按钮执行

 

  5.3.2测量电流消耗

  参考数据表,在 25°C 和 VDD = 3.6V 的 Stop1 模式下,电流消耗应为 6.70μA

  

 

PWR

 

  使用 STM32Cube Monitor-Power ,我们测量了:

  

 

PWR

 

  5.4 Stop2模式

  在 Stop 2 模式下,大部分 VCORE 域都处于较低泄漏模式。

  仅更改代码中的这一行:

  HAL_PWREx_EnterSTOP2Mode ( PWR_SLEEPENTRY_WFI );

  5.4.1编译烧写

 5.4.2测量电流消耗

  参考数据表[4],在 25°C 和 VDD = 3.6V 的 Stop2 模式下,电流消耗应为 1.26μA

  

 

PWR

 

  使用 STM32Cube Monitor-Power [5],我们测量了:

  

 

PWR

 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分