stm32L151低功耗学习——Alarm闹钟周期唤醒(10s/10min/10h)

一、最近在搞stm32L151C8T6的低功耗模式。

项目场景:

提示:这里简述项目相关背景:
LoRa低功耗,用到stm32L151C8T6+sx1278,SPI通信。本文主要讲述stm32L151低功耗问题——待机模式。
以下代码理论10s唤醒一次,时间可自由设置,详细配置之代码注释有


问题描述:

不废话直接上代码:
LowPower.c文件:

#include "LowPower.h"
#include "stm32l1xx_rtc.h"
#include "stm32l1xx.h"
#include "stm32l1xx_exti.h"
#include "misc.h"
#include "stm32l1xx_rcc.h"
#include "stm32l1xx_pwr.h"

//RTC 时钟配置
void rtc_init(void) {
   
    RTC_InitTypeDef RTC_InitStructure;
	RTC_TimeTypeDef  RTC_TimeStruct;
    EXTI_InitTypeDef EXTI_InitStructure;
    NVIC_InitTypeDef NVIC_InitStructure;
    
    /* Enable the PWR clock */
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
    /* Allow access to RTC */
    PWR_RTCAccessCmd(ENABLE);
    RTC_WaitForSynchro();
	 /* Reset RTC Domain */
    RCC_RTCResetCmd(ENABLE);
    RCC_RTCResetCmd(DISABLE);
    /* Enable the LSI OSC */
    RCC_LSICmd(ENABLE);
    /* Wait till LSE is ready */
    while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
	/* Select the RTC Clock Source */
    RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI)<
  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值