STM32低功耗模式实践

STM32低功耗模式实践

STM32一共有三种低功耗模式,睡眠模式、停止模式以及待机模式。

其中,睡眠模式时内核停止运行,但外设仍在工作,所有外设的时钟不会被关闭。

停止模式,除了Cortex-M3内核停止外,所有外设时钟也被关闭,可以选择使能内部时钟,SRAM和寄存器内容被保留,IO口保持为进入睡眠前的状态。

待机模式时,所有1.8V电源部分全部断电,SRAM和寄存器内容被丢失,这最为省电的一种方式,但是唤醒后就丢失了记忆。

本文选择使用停止模式,要低功耗,又要唤醒后继续运行,那stm32低功耗模式可以做到多省电呢?我们看看停止模式和待机模式下的电流标称值。

我在stm32f103的一个开发板上实验了下停止模式的RC时钟唤醒以及外部中断唤醒,使用一个100欧的电阻测板子的耗电电流,发现基于RC时钟唤醒的停止模式时整板电流居然只有30uA!真的非常厉害。这也是我更换了一个低功耗LDO(待机4uA)的功劳!由于没有使能任何外设,只使能了内部40K低速振荡器,因而与系统的标称值已经非常接近。如果使用IO唤醒,那么要使能该IO的相应外设,实测睡眠时高达1.1mA。这两种唤醒模式可以被用于两种不同的场景,比如RC定时唤醒用于主动上报的数据采集器,外部唤醒的机制用于运动触发唤醒机制。


手册标准值


实测值


RC定时唤醒


睡眠


25uA


30uA(26uA+4uA)


运行


30-70mA


24mA


外部中断唤醒


睡眠


25uA+外设


1.1mA


运行


30-70mA


25mA

时间: 2024-10-09 19:13:33

STM32低功耗模式实践的相关文章

STM32低功耗模式与烟雾报警器触发信号电路设计

1.STM32的3种低功耗模式 STM32有3种低功耗模式,分别是睡眠模式.停机模式和待机模式. 2.STM32在不同模式下的电流消耗 a.工作模式  消耗电流在27mA至36mA之间. b.睡眠模式  消耗电流在5.5mA至14.4mA之间. c.停机模式和待机模式  停机模式消耗电流在15uA  待机模式在5uA 3.各种低功耗模式下的唤醒条件 从上面的图表1可以看到,在睡眠模式下和待机模式下可以利用外部中断唤醒,而停机模式下只能通过以下4种方式唤醒: a.WAKEUP引脚的上升沿 b.RT

1_CC2530 Zstack 2.5.1a 低功耗模式

最近在研究CC250的低功耗模式,从官方的文档Measuring Power Consumption of CC2530 With Z-Stack.PDF文档中大概了解下需要配置的内容,结合自己测试的经验,大概介绍下.使用Zstack的版本如下: ZigBee 2007 Release Version 2.5.1a April 25, 2012 CC530的功耗模式情况如下: (1)LITE Sleep,我们所说的PM2模式,功耗在ma级别,会被任务定时器或者外部中断唤醒(按键中断) (2)De

android wifi SWOL低功耗模式

1 睡眠模式RX代码流程 ar_wal_rx_patch.c::patch_rx_process_recv_status//调用rx_ctxt->data_ind_handler -> ar_wal_rx_common_patch.c::patch_rx_install_data_ind -> 2 低功耗模式代码流程 3 添加的代码patch

13、低功耗模式

1.低功耗模式 在系统或电源复位以后,微控制器处于运行状态.当CPU不需继续运行时,可以利用多种低功耗模式来节省功耗,例如等待某个外部事件时.用户需要根据最低电源消耗.最快速启动时间和可用的唤醒源等条件,选定一个最佳的低功耗模式. 2.STM32F10xxx有三种低功耗模式:●  睡眠模式(Cortex™-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC.系统时钟(SysTick)等仍在运行) ●  停止模式(所有的时钟都已停止) ●  待机模式(1.8V电源关闭) 此外,在运

天天设计模式二:创建型模式实践

天天设计模式二:创建型模式实践 创建型设计模式主要应用在对象创建,以不同的方式来满足系统的灵活性配置.动态注入.等应用场景. 一.单例模式 二.抽象工厂 三.建造者模式 四.工厂方法模式 五.原型模式

STM32启动模式及API(转)

源:STM32启动模式及API 我们玩ARM9,一般都是在内存里调试程序,速度飞快.STM32下也可以这样,虽说现在的flash寿命已经很长了,但flash中调试烧录程序还是一个很慢的过程,有时候程序上一个小小的改动要花上几倍的时间下载代码,这确实是不能忍受的. 我们也可以在开发STM32时,在内存中调试程序. { STM32这颗Cortex-M3控制器,与其他许多ARM一样,提供了BOOT0和BOOT1两个管脚用于启动选择.BOOT1=x  BOOT0=0  从用户闪存启动,这是正常的工作模式

MSP430 G2553 低功耗模式LPMx

MSP430除了正常运行时的active模式外,还支持五种低功耗模式(Low-power mode),分别为LPM0.LPM1.LPM2.LPM3.LPM4,由状态寄存器中的CPUOFF.OSCOFF.SCG0.SCG1比特位设置. 六种模式对应的时钟状态为: 其中,LPM3.LPM4比较常用,对低功耗的贡献也最大.LPM3模式关闭了DCO.CPU,从而MCLK.SMCLK无法工作,ACLK(来源为LFXT1或VLO)可以正常工作并用于系统的定时唤醒.LPM4模式下所有内部时钟信号都关闭,系统只

STM32中用 stop 模式 配合低功耗模式下的自动唤醒(AWU) 能否实现FreeRTOS tickless 模式

原文地址:https://www.cnblogs.com/suozhang/p/9946097.html

STM32 GPIO模式理解

stm32的GPIO的配置模式有好几种,包括: 1. 模拟输入: 2. 浮空输入: 3. 上拉输入: 4. 下拉输入: 5. 开漏输出: 6. 推挽输出: 7. 复用开漏输出: 8. 复用推挽输出 如图是GPIO的结构原理图: 1.模拟输入 从上图我们可以看到,我觉得模拟输入最重要的一点就是,他不经过输入数据寄存器,所以我们无法通过读取输入数据寄存器来获取模拟输入的值,我觉得这一点也是很好理解的,因为输入数据寄存器中存放的不是0就是1,而模拟输入信号不符合这一要求,所以自然不能放进输入数据寄存器