STM32F103R8和RC的停机模式的休眠电流还不一样,R8停机模式实测为11uA,RC停机模式实测为30uA,还以为又是我的程序哪里没做好呢,仔细看了PDF,这两个芯片PDF上标的值的确有区别,和我测的值差不多,那我就没有再深究的意义了!

结合下文的高手经验,反复摸索,
standby模式1.9uA,PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
stop模式:11uA, PWR_EnterSTANDBYMode(); 
实验证明,将IO端口设成IPU/IPD/AIN/PPOUT=1/PPOUT=0/ODOUT=0,电流是基本相同的,最可怕的就是GPIO浮空,且电路上未外接上拉下拉,这样电流就会比较大。
原来以为PPOUT要是输出为0,就会浪费电流,其实只要不负载,电流和ODOUT=0时一样的。
以下为部分代码:
void MUC_SLEEP(void)
{
   GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);  //完全失能JTAG/SWD 不关电流也好像不影响
   GPIO_PinRemapConfig( GPIO_Remap_PD01 , ENABLE );//晶振为GPIO 不关电流也好像不影响
   RCC_LSEConfig(RCC_LSE_OFF);//关闭RTC  不关电流也好像也不影响
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
   ADC_CONFIG(DISABLE);
   USART_DeInit(USART1);
   USART_DeInit(USART2);
   USART_DeInit(USART3);
   USART_DeInit(UART5);
   EXTI_INITIAL(ENABLE);//以下端口的设置最有影响
   GPIO_PIN_INITIAL(GPIOA,GPIO_Pin_All,GPIO_Mode_AIN,0); //此处没做外部唤醒 仅用于测试 EXTI合理设置GPIO不影响电流
   GPIO_PIN_INITIAL(GPIOB,GPIO_Pin_All,GPIO_Mode_AIN,0); 
   GPIO_PIN_INITIAL(GPIOC,GPIO_Pin_All,GPIO_Mode_AIN,0); 
   GPIO_PIN_INITIAL(GPIOD,GPIO_Pin_All,GPIO_Mode_AIN,0);
   //PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);//STOP模式
   PWR_EnterSTANDBYMode();//standby模式 
}
以下来自这个总结似乎更贴合用户
STM32F103C8T6低功耗至25uA,再也下不去了,请教高手 - STM32/STM8单片机论坛 - ST MCU意法半导体官方技术支持论坛 - 21ic电子技术开发论坛 
 dzxxlxd 发表于 2013-7-15 16:10:33 |只看该作者 |返回版面
找到方法了,最终板级数据:
stop模式,外部中断唤醒:13uA
standby模式,2.5uA

举报

dzxxlxd

实习生

专家等级:

结帖率:0%

6#

 dzxxlxd 发表于 2013-7-15 16:22:08 |只看该作者 |返回版面

具体要点为:
1、所有IO管脚,如果高阻状态端口是高电平,就设成上拉输入,如果高阻状态是低电平,设成下拉输入,如果高阻是中间状态,设成模拟输入。这个很多人都提到过,必须的。作为输出口就免了,待机你想输出个什么东西,一定要输,硬件上加上下拉就可以了
2、两个晶振输入脚要remap成普通IO!!!使用内部晶振。
3、pwr的时钟要使能,即RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);这个也相当重要
4、关闭jtag口,并设成普通IO;
5、注意助焊膏的质量!!!注意电路板层之间是否进水!!!!
掌握这几项要点,再设中断什么的都行,整个世界清静了!!!完全低能耗。

==============以下摘自网络=====================

STM32实现低功耗待机总结(电流低至5.7uA)

刚开始进入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重新初始化,否则唤醒后主频发生改变,会影响系统;

出处:http://blog.sina.com.cn/s/blog_542bad910101sads.html

STM32单片机-低功耗设置相关推荐

  1. 关于stm32单片机低功耗的实现和唤醒

    关于stm32单片机低功耗的实现和唤醒 - 沙河淘金 - 博客园 关于stm32单片机低功耗的实现和唤醒 最近做的项目中要求低功耗,在单片机完成了手头上的工作之后,就进入低功耗模式,项目的需求是单片机 ...

  2. STM32单片机低功耗剖析

    STM32F103R8和RC的停机模式的休眠电流还不一样,R8停机模式实测为11UA,RC停机模式实测为30uA,还以为又是我的程序哪里没做好呢,仔细看了PDF,这两个芯片PDF上标的值的确有区别,和 ...

  3. stm32芯片休眠模式_基于STM32单片机低功耗模式机制详细解析

    相关推荐 创新的 RXv3 核大幅提升了久经验证的瑞萨电子 RX CPU 核架构性能,实现了高达 5.8 Co... 发表于 2018-10-25 14:54 • 0次阅读 RXv3核实现了5.8 C ...

  4. STM32单片机低功耗配置

    一.低功耗模式 当CPU不需继续运行时,可以利用多种低功耗模式来节省功耗,STM32支持三种低功耗模式,可以在要求低功耗.短启动时间和多种唤醒事件之间达到最佳的平衡. 睡眠模式SleepMode.在睡 ...

  5. stm32单片机例程下载链接

    在这篇文章中将自己上传的资源做一个下载链接的目录方便查找下载 STM32单片机实现DMA+ADC+UART功能 STM32F103单片机+ULN2003驱动直流电机 STM32F103单片机使用TM1 ...

  6. 十年硬件老司机,结合实际案例,带你探索单片机低功耗设计!

    作者:YJGQDD(阿莫:hailing),整理:晓宇 微信公众号:芯片之家(ID:chiphome-dy) 经过了多年的低功耗硬件设计(公司硬件设计和软件设计是分开的,我一直是做硬件,在面对低功耗生 ...

  7. 基于STM32单片机采集数据数据上云

    前言 以往采集数据均是采用Arduino开发板.esp32wifi模块等,本次实验采用的是STM32单片机,STM32系列基于专为要求高性能.低成本.低功耗的嵌入式应用专门设计的ARM Cortex- ...

  8. STM32进入低功耗模式以及唤醒(RTC+中断)

    此文献给做单片机工作的同僚,希望大家在嵌入式硬件的道路上越走越远,第一篇,望大家多多指导,不喜勿喷! 这里主要说一下,本人在调试STM32低功耗功能时遇到的问题以及解决思路与大家分享一下. 在确认使用 ...

  9. STM32开发 -- 低功耗模式详解

    很多单片机都有低功耗模式,STM32 也不例外.当 CPU 不需继续运行时,可以利用多个低功耗模式来节省功耗. 这部分不是我负责,但是也是有必要看一下的. 参看: STM32F1开发指南-库函数版本_ ...

最新文章

  1. C++编程进阶2(编译器在类内默认生成的函数讨论以及纯虚析构函数)
  2. poj2186强联通(牛仰慕)
  3. PMCAFF微课堂|诸葛理财联合创始人:互联网金融产品的那些坑
  4. AI时代,你的职业会是?99%的人都无法直面!
  5. linux18配置静态ip,ubuntu18配置静态IP地址
  6. 关于BigInteger的加减乘除使用
  7. jinja Expressions
  8. springboot自行车在线租赁管理系统毕业设计源码101157
  9. 关于web的重定向,js实现重定向的方法
  10. UI设计师应聘面试攻略看这篇就够了
  11. python怎么读xlsx_python读取xlsx的方法
  12. 关于 pace 有意思的一篇文章
  13. 前端Pako.js 压缩/解压库 与 Java 的 zlib 压缩与解压 的互通实现
  14. 微信Mac版客户端(支持查看朋友圈)
  15. 分布式深度强化学习的内功修炼之隐式分布
  16. DevOps之自动化测试
  17. 搞笑决战水源之巅收藏六 师傅
  18. Snipaste的使用方法
  19. 利用python声音处理库librosa提取声音信号的mfcc特征及特征融合
  20. 就这样吧,从此山水不相逢

热门文章

  1. android 开源_8个开源Android教育应用
  2. html不同板块点击切换,板块快速切换的操作策略
  3. 擦边上100分,我的托福考试总结
  4. 如何用自己电脑架设服务器
  5. Unity DOTS1.0安装
  6. 学计算机为什么上岗之前要培训,浙江公务员面试模拟题华图解析
  7. AI一分钟 | 美成人电影公司想用AI为用户拍定制片;日本公司推AI女友
  8. python抓取数据库数据_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储...
  9. HUELOJ 1109: 打印数字图形(函数专题)
  10. db2 java 函数_DB2函数大全