STM32低功耗开发记录(二)

HAL_PWR_EnableSleepOnExit();

HAL_RCC_GetSysClockFreq()

HAL_RCC_GetHCLKFreq()

 

 

misc.c的NVIC_SystemLPConfig()函数

相关信息《Cortex-M3 权威指南》:

 

 

 

 

MSI时钟:

频率输出:

《Reference Manual_STM32L100xx, STM32L151xx, STM32L152xx and STM32L162xx advanced ARM_-based 32-bit MCUs》

《Cortex-M3-Technical-Reference-Manual》

《ARMv7-M_ARM》

 

内部RC振荡器 à 时钟源MSI à System clock à HCLK

     |

     |____RCC_ICSCR寄存器的MSIRANGE比特控制MSI的range.这个值在Stop模式下保持。

 

  1. 默认,上电后,处理器重启后处于Run模式。Run模式下CPU时钟来自HCLK。《refreencr manual》P108
  2. Dynamic voltage scalling management选择的voltage range会影响频率的高低范围。
  1. System Clock时钟在处理器重启后、从Stop和Standby模式唤醒后默认是选择MSI的,其他三个时钟源HSI/HSE/PLL时钟可以被关闭以降低功耗两个二级时钟LSI RC(32KHz),LSE(32.768KHz)是否需要关闭?
  2. 关闭Flash???
  3. 由于需要外部加速度传感器的震动作为中断触发MCU唤醒,并考虑到所有操作可以在中断处理函数中执行,可以考虑使用Stop模式。该模式需要靠中断退出。Stop模式下PLL,HIS,HSE,MSI全部disabled。退出该模式时使用MSI作为系统时钟。
  4.  

 

Regulator设置

VOS位设置

ULP(ultra low power)设置

MSI range设置

Vref

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值