0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

探究STM32低功耗的几种模式

FPGA那点事儿 来源:CSDN 作者:zzw3255 2021-07-26 17:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

低功耗模式

本文讨论下STM32低功耗模式,先看如下手册。

对比了 STM32F0 和 STM32F1 两者进入低功耗是一样的,低功耗模式有三种:

睡眠模式,CM3 内核停止,外设仍然运行,此功耗是最高的

停止模式,所有时钟都停止,此功耗较低,典型大概在20uA左右

待机模式,1.8V 内核电源关闭,此功耗最低,典型大概在2uA左右

一般做开发大多都是选择停机模式,因为停机模式功耗较低,而且任一中断或事件都能唤醒。待机模式虽然功耗最低,电流只差10个微安,但是只有特定的事件和引脚可以唤醒,实时性不是很好。

先来看下官方库进入低功耗的方式。

void PWR_EnterSleepMode(uint8_t PWR_SLEEPEntry); //睡眠模式 void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry); //停机模式void PWR_EnterSTANDBYMode(void); //待机模式

这里我们用到停机模式,有两个参数 。

第一个PWR_Regulator是选择电源是否进入低功耗。

#define PWR_Regulator_ON //电源不进低功耗 唤醒基本没延迟#define PWR_Regulator_LowPower //电源进去低功耗 不过唤醒启动有一点延迟

第二个参数PWR_STOPEntry选择唤醒的方式。

#define PWR_STOPEntry_WFI //中断唤醒#define PWR_STOPEntry_WFE //事件唤醒

停机模式唤醒后自动选择系统内部时钟,看自己的应用是否需要重新配置。如果你的系统时钟是HSI或者HSE是要重新配置,一般都需要重新配置,直接调用系统时钟配置函数。

另外停机模式唤醒后,flash程序是从中断或事件开始执行的。

如何做到停机模式更低功耗

代码

RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE); //使能时钟 PWR_EnterSTOPMode(PWR_Regulator_LowPower,PWR_STOPEntry_WFI);

上面代码第一个参数PWR_Regulator_LowPower是配置电源低功耗模式。第二个参数PWR_STOPEntry_WFI用来确定是中断唤醒还是事件唤醒,或者两者都要。

第二步你要把所有引脚IO口释放,全部配置成模拟输入状态,此时IO口几乎0消耗,具体见手册说明。

3ede9038-e0bf-11eb-9e57-12bb97331649.png

我们只要在进入低功耗之前把IO口配置一下就行了(根据自己应用需要配置IO),但是唤醒之后就要重新配置IO口了。

注意,在配置IO模拟输入之前,一定不要锁定IO口。我之前就踩了这个坑,在配置成模拟输入之前我们串口两个引脚锁定了导致我的功耗一直在90uA左右下不去。

正确配置的功耗在10uA左右,这功耗已经相当低了,用四节5号电池够你用至少1年了。

编辑:jq

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

    关注

    2313

    文章

    11211

    浏览量

    375344

原文标题:STM32低功耗模式

文章出处:【微信号:gh_94c30763133f,微信公众号:FPGA那点事儿】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    STM32L053x6/8:超低功耗32位MCU的卓越之选

    STM32L053x6/8:超低功耗32位MCU的卓越之选 引言 在当今的电子设备设计中,低功耗、高性能的微控制器(MCU)是众多应用的核心需求。STM32L053x6/8系列MCU凭
    的头像 发表于 04-18 09:05 206次阅读

    STM32L151xC与STM32L152xC:超低功耗MCU的卓越之选

    STM32L151xC与STM32L152xC:超低功耗MCU的卓越之选 在当今的电子设计领域,超低功耗微控制器(MCU)的需求日益增长,尤其是在对
    的头像 发表于 03-11 16:30 374次阅读

    LAT1594_基于事件唤醒低功耗之介绍

    客户反馈在 STM32U575 上使用 standby 模式时,无法使用 WKUP 管脚唤醒,检查客户配置后,发现是唤醒管脚配置错误导致,修改为正确配置后能正常唤醒 CPU。Cortex-MCPU
    发表于 03-11 10:48 0次下载

    STM32L072xx系列微控制器:低功耗设计的优选之选

    STM32L072xx系列微控制器:低功耗设计的优选之选 在当今的电子设备设计中,低功耗、高性能的微控制器是众多工程师追求的目标。STMicroelectronics推出的STM32L
    的头像 发表于 02-28 11:35 951次阅读

    CW32L052的低功耗模式

    CW32L052工作温度为-40℃~85℃,宽工作电压1.65V~5.5V,支持Sleep和DeepSleep两种低功耗工作模式,在DeepSleep模式下工作电流仅为500nA,从这一模式
    发表于 01-07 07:45

    探究TDA8035:高集成低功耗智能卡接口的实用之选

    探究TDA8035:高集成低功耗智能卡接口的实用之选 在智能卡技术广泛应用的今天,一款性能卓越的智能卡接口芯片显得尤为重要,NXP的TDA8035就是这样一款值得关注的产品。它是集成式接触式智能卡
    的头像 发表于 12-28 15:05 1632次阅读

    请问CW32芯片有哪些低功耗模式

    CW32芯片有哪些低功耗模式
    发表于 12-22 07:02

    探究DSLVDS1048:低功耗高速差动线路接收器的杰出代表

    探究DSLVDS1048:低功耗高速差动线路接收器的杰出代表 在高速数据传输的应用场景中,低功耗、高数据速率的接收器是实现高效稳定通信的关键。DSLVDS1048作为一款四路CMOS直通差动线路
    的头像 发表于 12-18 10:50 540次阅读

    什么是低功耗设计,如何评估低功耗MCU性能?

    每一个细节来考虑降低功率消耗,从而尽可能地延长电池使用时间。 因此,大部分芯片都会有低功耗模式。从MCU端来讲,低功耗的MCU性能一般有以下几个参数指标来衡量: ·MCU处于深度休眠模式
    发表于 12-12 07:43

    武汉芯源MCU的功耗如何优化?有哪些低功耗模式和节能技术?

    武汉芯源MCU的功耗如何优化,有哪些低功耗模式和节能技术?
    发表于 12-08 07:44

    CW32 UART低功耗模式详解

    ,往往是靠电池来供电,所以设计人员从每一个细节来考虑降低功率消耗,从而尽可能地延长电池使用时间。因此,大部分芯片都会有低功耗模式,以CW32L083为例,它就是一个32位低功耗微控制器。 一、芯片
    发表于 11-12 07:24

    STM32WB1MMC蓝牙低功耗模块技术解析与应用设计

    STMicroelectronics STM32WB1MMC蓝牙® 低功耗模块是一款超低功耗、小尺寸、经过认证的2.4 GHz无线模块。它支持低功耗蓝牙5.3。它基于
    的头像 发表于 10-25 16:20 1880次阅读
    <b class='flag-5'>STM32</b>WB1MMC蓝牙<b class='flag-5'>低功耗</b>模块技术解析与应用设计

    【RA4M2-SENSOR】+低功耗模式功耗测试

    RA4M2-SENSOR开发板提供了电源管理,所提供的三种低功耗模式为:睡眠模式(Sleep Mode)、软件待机模式(Software Standby Mode)、贪睡
    发表于 10-01 09:13

    【RA4M2-SENSOR】5、外部中断按键+低功耗模式+功耗测量

    进行激活。 之后将原先压栈的寄存器取出,继续运行之前的程序。 电源管理——低功耗模式 在很多应用场合中都对电子设备的功耗要求非常苛刻,如某些传感器信息采集设备,仅靠小型的电池提供电源,要求工作长达数年
    发表于 09-01 20:53

    【RA4L1-SENSOR】07 低功耗待机模式功耗实测

    1. 前言 本次实验的目标是设置低功耗模式,并配置RTC周期中断唤醒,在时钟模式下保持低功耗。然后外接INA226电流计做功耗测试。 2.
    发表于 06-20 09:36