STM8L051低功耗模式实现说明文档.docx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
甜订e (((CLK->SWCR) 甜订e (((CLK->SWCR)& 0x01)=0x01); #else CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_l); STM8L051低功耗模式实现说明文档 ?Si STM8L051低功耗模式测试文档 STM8L051 的五种低功耗模式 wait , low power run mode, low power wait mode, Ative-Halt mode. Halt mode。 1、 WAIT mode 在等待模式,CPU的时钟是停止的,被选择的外设继续运行。WAIT mode分为 两种方式:WFE, WFI。WFE是等待事件发生,才从等待模式中唤醒。WFI是等待中断 发生,才从等待模式中唤醒。 2、 low power run mode 在低功耗运行模式下,CPU和被选择的外设在工作,程序执行在LSI或者LSE 下,从RAM中执行程序,Flash和EEPROM都要停止运行。电压被配置成Ultra Low Power模式。进入此模式可以通过软件配置,退出此模式可以软件配置或者是复 位。 3、 low power wait mode 这种模式进入是在low power run mode下,执行wfe。在此模式下CPU时钟会 被停止,其他的外设运行情况和low power run mode类似。在此模式下可以被内 部或外部事件、中断和复位唤醒。当被事件唤醒后,系统恢复到low power run modeo 4、 Active-Halt mode 在此模式下,除了 RTC外,CPU和其他外设的时钟被停止。系统唤醒是通过 RTC中断、外部中断或是复位。 0、 Halt mode 在此模式下,CPU和外设的时钟都被停止。系统唤醒是通过外部中断或复位。 关闭内部的参考电压可以进一步降低功耗。通过配置IIP位和FWU位,也可以6US 的快速唤醒,不用等待内部的参考电压启动。 一.各个低功耗模式的代码实现 WAIT mode 等待模式分为两种:WFI和WFE。 1 WFI mode 当执行“Mi”语句时,系统就进入WFI模式,当中断发生时,CPU被从WFI模 式唤醒,执行中断服务程序和继续向下执行程序。 通过置位CFG_GCR的AL位,使主程序服务完中断服务程序后,重新返回到WFI 模式。 程序如下: void Mcuwf i () PftT?_UltraLowPowerCmd (ENABLE) ; //开启电源的低功耗模式 CLK_HSEConfig(CLK_HSE_OFF); //关闭 HSE 时钟(16MHz) CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_LSE); IO? CLK_SYSCLKSourceSwitchCmd(ENABLE); CLK_HSICmd (DISABLE); CLK_SYSCLKSourceConfig (CLK_SYSCLKSource_LSI); CLK_SYSCLKSourceSwitchCmd (ENABLE); while (((CLK->SWCR)& 0x01)=0x01); CLK_HSICmd (DISABLE); #end辻〃切换时钟到LSI (38KHz) wfi 0 : //进入WFI模式 #ifdef Only_Interrupt //设置CFG_GCR的AL位,服务完中断后回到WFI模 CFG->GCR =CFG_GCR_AL: #endif 2 WFE 当执行"wfe"语句时,系统就进入WFE模式。 WFE有两种唤醒模式,一种是:中断唤醒,一种是:事件唤醒。 当中断唤醒时,当执行到wfe时,进入wfe模式休眠。系统执行步骤如下:进 入WFE模式—> 有中断产生一>系统唤醒一>执行中断服务程序一>继续休 眠。当事件唤醒时,当执行到wfeW,进入wfe模式休眠。系统执行步骤如下: 进入WFE模式—> 有中断产生一>系统唤醒 ——>执行中断服务程序一>继续 2、 low power run mode 这种模式程序在RAM中执行,EEPROM和FLASH是在IDDQ(低功耗模式),时钟 切换到低速时钟。 进入此模式的步骤如下: 1、进入RAM 2、切换系统时钟到LSE或LSI 3、关闭高速时钟、外设和ADC 4、屏蔽中断 5、通过设置FLASH_CR1的EEPM位来关闭FLASH和EEPROM 6、等待FLASH和EEPROM关闭 7、通过设置CLK_REGCSR的REGOFF位进入校准低功耗模式 退ill low power run mode 的步骤如下: 1、通过重置CLK_REGCSR的REGOFF位进入主校准模式,延时等待主校准稳 定。2、通过设置FLASH_CR1

文档评论(0)

ailuojue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档