datasheet

STM32F10xxx的三种低功耗模式

2019-07-10来源: eefocus关键字:STM32F10xxx  低功耗模式  寄存器

稍微整理一下开发资料和网络上的低功耗知识。


 


STM32F10xxx有三种低功耗模式:


1.睡眠模式(M3内核停止,外设仍在运行,功耗最高):


void PWR_EnterSleepMode(uint8_t PWR_SLEEPEntry); //睡眠模式


中断和唤醒事件可唤醒(中文参考手册4.3.3)。


 


2.停止模式(所有时钟停止,功耗较低,约20uA):


void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry); //停机模式


/*

  * PWR_Regulator: specifies the regulator state in STOP mode.  //选择电源调节器的状态

  *   This parameter can be one of the following values:

  *  PWR_Regulator_ON: STOP mode with regulator ON   //电源不进低功耗 唤醒基本没延迟 功耗稍微大一些

  *  PWR_Regulator_LowPower: STOP mode with regulator in low power mode  //电源进低功耗 唤醒启动有一点延迟

  * PWR_STOPEntry: specifies if STOP mode in entered with WFI or WFE instruction.//选择是WFI还是WFE

  *   This parameter can be one of the following values:

  *  PWR_STOPEntry_WFI: enter STOP mode with WFI instruction //中断唤醒

  *  PWR_STOPEntry_WFE: enter STOP mode with WFE instruction //事件唤醒

  */


多选用此模式,功耗较低,任一中断可唤醒。


停机模式唤醒后自动选择HSI RC振荡器为系统时钟,看自己的应用是否需要重新配置,一般都需要重新配置,直接调用系统时钟配置函数。停机模式唤醒后,flash程序是从中断或事件开始执行的。


做到停止模式的更低功耗(摘自网络):配置电源进入低功耗PWR_Regulator_LowPower,把所有引脚IO口释放,全部配置成模拟输入状态,IO口几乎0消耗。(唤醒后要重新配置IO口)。


 


3.待机模式(1.8V电源关闭,功耗最低,2uA左右):


有四种方式可以退出待机模式:一个外部复位(NRST 引脚上升沿)、 IWDG 复位、 WKUP 引脚上的上升沿、RTC 闹钟事件。


 


进入待机模式(设置 WK_UP 引脚作为唤醒源):


1、因为要配置电源控制寄存器,所以必须先使能电源时钟:


RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); //使能 PWR 外设时钟


2、使能时钟之后后再设置 PWR_CSR 的 EWUP 位,使能 WK_UP 用于将 CPU 从待机模式唤醒。


PWR_WakeUpPinCmd(ENABLE); //使能唤醒管脚功能


3、设置 SLEEPDEEP 位, 设置 PDDS 位,执行 WFI 指令,进入待机模式:


void PWR_EnterSTANDBYMode(void); //待机模式


4、最后编写 WK_UP 中断函数:

通过 WK_UP 中断(PA0 中断)来唤醒 CPU,所以有必要设置一下该中断函数,同时也可以通过该函数进入待机模式。


 


低功耗模式之外的降低功耗办法:


降低系统时钟:对预分频寄存器编程


关闭AHB和APB总线上未被使用的外设时钟

 

--------------------- 

作者:sheepsleepin414 

来源:CSDN 

原文:https://blog.csdn.net/sheepsleepin414/article/details/81903975 

版权声明:本文为博主原创文章,转载请附上博文链接!


关键字:STM32F10xxx  低功耗模式  寄存器

编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic467321.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:STM32入门之旅(第一天)-------stm32概述
下一篇:STM32低功耗时引脚配置

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32F10xxx支持三种复位

STM32F10xxx支持三种复位形式,分别为系统复位、上电复位和备份区域复位。一、系统复位除了时钟控制器的RCC_CSR寄存器中的复位标志位和备份区域中的寄存器(见图4)以外,系统复位将复位所有寄存器至它们的复位状态。当发生以下任一事件时,产生一个系统复位:1. NRST引脚上的低电平(外部复位) 2.  窗口看门狗计数终止(WWDG复位) 3.  独立看门狗计数终止(IWDG复位) 4.  软件复位(SW复位) 5.  低功耗管理复位可通过查看RCC_CSR控制状态寄存器中的复位状态标志位识别复位事件来源。软件复位通过将Cortex™-M3中断应用
发表于 2019-06-14
STM32F10xxx支持三种复位

对STM32F10xxx中UART通信的一些理解

可以通过编程USART_CR1寄存器中的M位,选择成8或9位。在起始位期间, TX脚处于低电平,在停止位期间处于高电平。 每个字符(每帧信息)由4部分组成: (1)1位起始位,规定为低电平0; (2)8~9位数据位,即要发送的有效信息; (3)1位奇偶校验位(可选); (4)0.5,1.5,2个停止位,规定为高电平1. 10.USART中的寄存器 一个状态寄存器(USART_SR) 数据寄存器(USART_DR) 一个波特率寄存器(USART_BBR),12位整数和4位小数 控制寄存器1(USART_CR1) 控制寄存器
发表于 2019-05-23
对STM32F10xxx中UART通信的一些理解

STM32F10xxx_Keil中添加的预定义宏

;assert_param(IS_GPIO_ALL_PERIPH(GPIOx));  这时候我们需要在设置面板的“TargetOptions”中“C/C++”选项卡添加USE_STDPERIPH_DRIVER. STM32F10X_HD。这样才能使编顺利通过。  知其然了,我们还得知其所以然。下面就一一道来。我们知道,程序的执行是从main.c文件开始的,其中必须包含有头文件stm32f10x.h。打开stm32f10x.h,查找USE_STDPERIPH_DRIVER,在第8296-8298行找到#ifdef USE_STDPERIPH_DRIVER#include "stm32f10x_conf.h"#endif  这段
发表于 2019-01-17

STM32F1xxx存储器和总线架构

一.小容量,中容量,大容量的产品和互联型的产品内部结构是不同的。1.F101,F102,F103的产品系统结构2.互联型产品中的系统架构注:1.2.  当对APB寄存器进行8位或16位访问时,该访问被自动转换成32位的访问。
发表于 2018-06-05

STM32F10XXX总线架构和存储器组织

或者System总线访问这些资料。为了不让两者冲突,需要总线矩阵逻辑进行仲裁决断。AHB,通过总线矩阵和系统总线相连。再加上AHB/APB桥,构成了到外设的通道。从上图可以看出,APB分为两种:APB1和APB2。这样是为了适应不同速率的外设,同时兼顾性能功耗的考虑。APB1的操作频率限于36MHz,APB2操作于全速(最高72MHz)。 2. 存储器组织STM32F10XXX中flash,内置SRAM,片上寄存器等一起构成一个4GB的线性地址空间。数据采用小端格式存储,即低字节位于低地址(两低为小端)。下图是片上外设寄存器的映射地址,这便是C程序中以下类型定义的来源。<span style="
发表于 2018-06-05

STM32MX电源管理低功耗模式

前言:ST官方例程:(直接移植直接用,接口是现成的)在你STM32Cube固件库安装路径下....STM32CubeRepositorySTM32Cube_FW_F4_V1.23.0ProjectsSTM32F429I-DiscoveryExamplesPWRPWR_CurrentConsumption例程和测试程序下载链接:https://download.csdn.net/download/sudaroot/10891176一、STM32电源三种低功耗模式介绍节省功耗效果:待机  > 停止 > 睡眠。   1、睡眠模式先说一下事件(WFI)和中断(WFE)的区别:事件包括
发表于 2019-07-10
STM32MX电源管理低功耗模式

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved