打印
[STM8]

STM8l低功耗运行模式

[复制链接]
4896|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
根据手册低功耗运行模式只有一句话不知道怎么设置。

QQ图片20151103160902.png (93.38 KB )

QQ图片20151103160902.png
沙发
亚瑟的绿茶| | 2015-11-3 16:36 | 只看该作者
建议读RM0031,GPIO不要悬空,将时钟关闭(如果是Halt)。正常的话跟手册上相差不大。

使用特权

评论回复
板凳
lexiaoyao2012|  楼主 | 2015-11-3 16:41 | 只看该作者
本帖最后由 lexiaoyao2012 于 2015-11-4 09:48 编辑

PWR_UltraLowPowerCmd (ENABLE);GPIO_LowPower_Config();
PWR_FastWakeUpCmd(DISABLE);
CLK_LSICmd(ENABLE);                      //使能内部低速时钟
  CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_LSI);//切换为内部低速时钟

  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);    //1分频(不分频)   
  CLK_SYSCLKSourceSwitchCmd (ENABLE);//使能切换
  while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_LSI){}
  CLK_HSICmd(DISABLE);


这些都加了

使用特权

评论回复
地板
lexiaoyao2012|  楼主 | 2015-11-3 16:43 | 只看该作者
亚瑟的绿茶 发表于 2015-11-3 16:36
建议读RM0031,GPIO不要悬空,将时钟关闭(如果是Halt)。正常的话跟手册上相差不大。 ...

我不要睡眠,要低功耗运行

使用特权

评论回复
5
ericw0ng| | 2015-11-3 16:50 | 只看该作者
在ST搜索下面,就有例程了

STSW-STM8009
Introduction to STM8L15x power saving modes using the STM8L-DISCOVERY IDD measurement feature (AN3269)

使用特权

评论回复
6
wyde518| | 2015-11-3 16:55 | 只看该作者
可以用定期唤醒方式

使用特权

评论回复
7
lexiaoyao2012|  楼主 | 2015-11-3 17:05 | 只看该作者
ericw0ng 发表于 2015-11-3 16:50
在ST搜索下面,就有例程了

STSW-STM8009

之前就下载了已经按他的设置了,还是80uA

使用特权

评论回复
8
songchenping| | 2015-11-3 19:40 | 只看该作者
可能是哪一块设置没有弄对啊。还有你的低功耗运行是有个基础值的。

使用特权

评论回复
9
xinstruggle| | 2015-11-4 16:30 | 只看该作者
都忘了

使用特权

评论回复
10
qgmfly| | 2015-11-5 19:01 | 只看该作者
检查一下外设,哪个部分还在消耗电流

使用特权

评论回复
11
hui6209822| | 2015-11-5 21:16 | 只看该作者
low power run mode
这种模式程序在RAM中执行,EEPROM和FLASH是在IDDQ(低功耗模式),时钟切换到低速时钟。
进入此模式的步骤如下:
进入RAM
切换系统时钟到LSE或LSI
关闭高速时钟、外设和ADC
屏蔽中断
通过设置FLASH_CR1的EEPM位来关闭FLASH和EEPROM
等待FLASH和EEPROM关闭
通过设置CLK_REGCSR的REGOFF位进入校准低功耗模式
退出low power run mode的步骤如下:
通过重置CLK_REGCSR的REGOFF位进入主校准模式,延时等待主校准稳定。
通过设置FLASH_CR1的EEPM位来打开FLASH和EEPROM,延时等待FLASH和EEPROM打开。
屏蔽所有中断。

使用特权

评论回复
评论
lexiaoyao2012 2016-3-29 16:18 回复TA
非常好 
12
lexiaoyao2012|  楼主 | 2016-3-29 16:59 | 只看该作者
hui6209822 发表于 2015-11-5 21:16
low power run mode
这种模式程序在RAM中执行,EEPROM和FLASH是在IDDQ(低功耗模式),时钟切换到低速时钟 ...

现在进入了低功耗模式  3uA  但是退不出来

CLK_MainRegulatorCmd (DISABLE);  //电源切换到低功耗模式
  Delay(0x00ff);
//  while(RESET==CLK_GetFlagStatus (CLK_FLAG_REGREADY));
//  到这就不运行了。
//  Delay(0xffff);
  CLK_MainRegulatorCmd (ENABLE);  //退出低功耗
  Delay(0x00ff);
//  PWR_UltraLowPowerCmd (DISABLE);
  FLASH_PowerRunModeConfig(FLASH_Power_On);  
  CLK_HSICmd(ENABLE);                      //使能内部高速时钟
  CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSI);//切换为内部高速时钟
  
  CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);    //1分频(不分频)
  CLK_SYSCLKSourceSwitchCmd (ENABLE);//使能切换

使用特权

评论回复
13
aouwen| | 2017-3-8 20:20 | 只看该作者
lexiaoyao2012 发表于 2016-3-29 16:59
现在进入了低功耗模式  3uA  但是退不出来

CLK_MainRegulatorCmd (DISABLE);  //电源切换到低功耗模式

楼主现在弄好了吗?我最近也在弄这个模式,只是需要adc的运行,如果adc用来采集光照强度。如果光突然变大,就中断。请问进入低功耗模式可以用adc吗?
还有你的低功耗运行怎么进入的
就一句话吗?
CLK_MainRegulatorCmd(DISABLE);
Delay(0x00ff);

使用特权

评论回复
14
aouwen| | 2017-3-9 15:47 | 只看该作者
lexiaoyao2012 发表于 2016-3-29 16:59
现在进入了低功耗模式  3uA  但是退不出来

CLK_MainRegulatorCmd (DISABLE);  //电源切换到低功耗模式

请问如何进入RAM?

使用特权

评论回复
15
SupremeZ01| | 2019-11-21 17:20 | 只看该作者
aouwen 发表于 2017-3-8 20:20
楼主现在弄好了吗?我最近也在弄这个模式,只是需要adc的运行,如果adc用来采集光照强度。如果光突然变大 ...

请问大哥只需要ADC运行的低功耗弄出来了吗,我最近也在用stm8l开发低功耗的产品,不知你的文档还找的到吗,如果可以能否指点二三,万分感谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

48

帖子

0

粉丝