刚开始进入STOPMode后,整机功耗有300uA的,此时外围其他硬件电路电流已经可以肯定漏电流在nA级,因此调试方向在主芯片,经过实际测试,都是GPIO配置的问题,比如某个GPIO为中断输入,闲置为低电平,而我们配置成了IPU,因此内部的40K上拉就会在这里消耗3/40k =75uA,另外将N.C的GPIO配置成Floating Input,也会有一些漏电流,实际测试漏电流不大;另外将STM32F05x直接PIINtoPIN替代STM32100,所以Pin35,36的PF6,PF7为之前的VCC,GND,因此要相应的配置为IPU,IPD,才不会有拉电流/灌电流;外部不使用晶振,因此必须将其配置为IPU/IPD或者输出Low,如果配置成Floating,实测消耗200uA+的电流,这个特别注意。另外不需要关闭不用的外设的CLK,因为STOPMODE会将内部1.8V的core关闭,因此该步骤不影响功耗。

因此在进入STOPMODE之前,需要做:

1、将N.C的GPIO统一配置为IPU/IPD;

2、检查一些Signal的输入Active是High/Low,相应进行配置为IPD/IPU,即避免在内部上/下拉电阻上消耗电流,而且该电流理论值为VCC/R = 3/40 =75uA;

3、如果外部晶振不使用,必须将GPIO配置为IPU/IPD/PPLow,不允许配置为floating,否则会消耗极大的电流 200uA+;

4*、加入进入STOPMODE前,不允许将PWR的CLK关闭,这部分牵涉低功耗模式,实际测试关闭能用,也能唤醒,但是电流会增加10uA+;

5、配置GPIO为输出时,根据输出的常态选择上拉/下拉,如闲置输出为0,则配置为下拉,输出闲置为1,则配置上拉;

6、另外特别说明的是->从Stopmode唤醒后,系统会自动切换到HSI,如果进入前使用的是外部晶振/PLL(PLL的clksource = HSI/HSE)因此必须调用System_Init(),对RCC重新初始化,否则唤醒后主频发生改变,会影响系统;

调试经验分享:

经常在移植新的产品方案时,都会遇到待机电流不能一步到位,需要测试、调试的过程,在此分享一个土办法。

1、在调用EnterStopmode前,将GPIO的所有配置寄存器printf,比对GPIO的初始化表,看是否在进入STOP前,在其他地方对GPIO配置做了改动;

  调试过程告诉我,基本都是在进入stopmode时,其他的GPIO被另外配置错误导致;

2、在调用EnterStopmode前,将GPIO的所有配置全部重新配置一次,也可以快速的检验是否是这个环节出问题。

3、附停机模式唤醒流程图

stm32f103停止模式低功耗设置(最低5.7ua)相关推荐

  1. STM32CubeMX学习笔记(16)——电源管理(PWR)低功耗停止模式

    一.低功耗模式简介 系统提供了多个低功耗模式,可在 CPU 不需要运行时(例如等待外部事件时)节省功耗.由用户根据应用选择具体的低功耗模式,以在低功耗.短启动时间和可用唤醒源之间寻求最佳平衡. 睡眠模 ...

  2. STM32F103 低功耗停止模式与待机模式操作

    工程中用到低功耗的控制,本来想使用待机模式,后来发现待机后所有IO口为高阻态,这样对于一些IO口控制的外设有些不妥,想过外部上拉一个电阻可是功耗不好控制放弃该方案选用停止模式.停止模式后IO口保持停止 ...

  3. stm32芯片休眠模式_STM32睡眠模式低功耗(停止模式)

    目前stm32已经非常流行了,那么本文讨论下stm32低功耗模式,不多说先上手册内容! 这是英文文档 不好看懂是吧,下面看中文文档! 我对比了 STM32F0 和 STM32F1 两者进入低功耗是一样 ...

  4. STM32睡眠模式低功耗(停止模式)

    目前stm32已经非常流行了,那么本文讨论下stm32低功耗模式,不多说先上手册内容! 这是英文文档 不好看懂是吧,下面看中文文档! 我对比了 STM32F0 和 STM32F1 两者进入低功耗是一样 ...

  5. STM32F103跳过停止模式,不能进入停止模式

    问题: STM32F103跳过停止模式,不能进入停止模式stopmode static void led_thread_entry(void* parameter) { unsigned int co ...

  6. 【STM32笔记】HAL库低功耗STOP停止模式的串口唤醒(解决进入以后立马唤醒、串口唤醒和回调无法一起使用、接收数据不全的问题)

    [STM32笔记]HAL库低功耗STOP停止模式的串口唤醒(解决进入以后立马唤醒.串口唤醒和回调无法一起使用.接收数据不全的问题) [STM32笔记]低功耗模式配置及避坑汇总 前文: blog.csd ...

  7. stm32l0的停止模式怎么唤醒_探索者 STM32F407 开发板资料连载第二十二章 待机唤醒实验

    1)实验平台:alientek 阿波罗 STM32F767 开发板 2)摘自<STM32F7 开发指南(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第二十二章 待机唤醒实 ...

  8. stm32l0的停止模式怎么唤醒_「正点原子STM32Mini板资料连载」第十九章 待机唤醒实验...

    1)实验平台:正点原子STM32mini开发板 2)摘自<正点原子STM32 不完全手册(HAL 库版)>关注官方微信号公众号,获取更多资料:正点原子 第十九章 待机唤醒实验 本章我们将向 ...

  9. STM32通过串口进入和唤醒停止模式

    STM32 具有运行.睡眠.停止和待机四种工作模式.上电复位后 STM32 处于运行状态,当内核不需要继续运行,就可以选择进入后面的三种低功耗模式降低功耗,这三种模式中,电源消耗不同.唤醒时间不同.唤 ...

最新文章

  1. 配送交付时间轻量级预估实践
  2. 《Java编程思想》第四版读书笔记 第四章
  3. 给枚举值增加扩展数据
  4. 索尼PS5国行版本周开售 后期将推全配色DualSense手柄
  5. linux驱动编写(dma驱动)
  6. 关于tomcat 中的 tomcat-users.xml 配置不生效原因
  7. dataframe指定位置插入行
  8. 安装Python readline模块
  9. 图片求导锐化 与模糊检测
  10. 用命令行netsh修改windows的ip、网关、dns
  11. 从小白创建自己的CSND
  12. 什么是超级浏览器?目前超级浏览器有哪些分类?
  13. 代码注释的艺术,优秀代码真的不需要注释吗?
  14. MP4BOx hint等常用命令
  15. Android 7.1 设置不支持遥控操作?
  16. 《程序开发心理学——程序开发组》
  17. Spring漫画学习笔记(二) 什么是BeanFactory
  18. 装修后才知道的79件事,无数网友真金白银砸出来...
  19. 多线程面试题_线程魔术技巧:使用Java线程可以做的5件事
  20. SpringCloud-Gateway网关统一登录鉴权+QQ第三方登录+Vue前后分离解决方案

热门文章

  1. php宝典2015,驾考宝典2015电脑版 v5.3.5 官方版
  2. 计算机毕业设计Java-ssm爱馨敬老院网站源码+系统+数据库+lw文档
  3. Sanity Testing 和 Smoke Testing的区别
  4. Jenkins流水线打包微服务构建docker镜像运行
  5. 没想到钱多多的求职之路竟如此艰辛,求大佬指点
  6. 72、【backtrader期货策略】十大经典策略-Aberration策略(布林带策略)(2021-10-29更新)
  7. 【佳学基因人工智能】RNA测序数据的信息分析——基因解码信息源的准备
  8. nginx打包文件以及解压
  9. Leetcode 488.祖玛游戏
  10. redhat Enterprise Linux Server release 7.2(Maipo) 安装redis-stat