STM32RTC唤醒功能配置(基于LL库)
//以下函数是基于STM32L476芯片写的/** 函数名称: RTC_Wake_Init* 函数说明: RTC唤醒初始化(需要在时钟初始化中打开LSE)* 输入参数: 无* 返回参数: 无*/
void RTC_Wake_Init(void)
{/* 设置RTC时钟源 */LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);/* 使能RTC时钟 */LL_RCC_EnableRTC();/* 失能RTC写保护 */LL_RTC_DisableWriteProtection(RTC);/* 设置预分频 */LL_RTC_SetAsynchPrescaler(RTC, 0x7F);LL_RTC_SetSynchPrescaler(RTC, 0xFF);/* 修改重装载值时需要先禁止唤醒定时器 */LL_RTC_WAKEUP_Disable(RTC);/* 等待WUTWF置1 */while (LL_RTC_IsActiveFlag_WUTW(RTC) != 1){}/* 设置重装载值 */LL_RTC_WAKEUP_SetAutoReload(RTC, 5);/* 选择唤醒时钟 */LL_RTC_WAKEUP_SetClock(RTC, LL_RTC_WAKEUPCLOCK_CKSPRE);/* 使能内部唤醒线 */LL_PWR_EnableInternWU(); /* 配置唤醒中断线20 */LL_EXTI_EnableIT_0_31(LL_EXTI_LINE_20);LL_EXTI_EnableRisingTrig_0_31(LL_EXTI_LINE_20); /* 配置唤醒中断优先级 */NVIC_SetPriority(RTC_WKUP_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(), 0, 0));NVIC_EnableIRQ(RTC_WKUP_IRQn);/* 清除唤醒标志 */LL_RTC_ClearFlag_WUT(RTC); /* 清除中断 */LL_RTC_EnableIT_WUT(RTC);LL_RTC_WAKEUP_Enable(RTC); /* 使能写保护 */LL_RTC_EnableWriteProtection(RTC);}/*** @brief This function handles RTC wake-up interrupt through EXTI line 20.*/
void RTC_WKUP_IRQHandler(void)
{if(LL_RTC_IsActiveFlag_WUT(RTC) != RESET){LL_RTC_ClearFlag_WUT(RTC);LL_EXTI_ClearFlag_0_31(LL_EXTI_LINE_20);if(Device.process == 0){Device.process=1;} }}
以上代码实测可行,唤醒时间可设置。
STM32RTC唤醒功能配置(基于LL库)相关推荐
- STM32f429独立看门狗配置--基于HAL库
STM32f429独立看门狗配置–基于HAL库 独立看门狗IWDG由专用的低速时钟LSI驱动,即使主时钟发生故障他仍然有效,但由于时钟LSI并不精确所以他适用于对时间精度要求低的场合,在喂狗的时候尽量 ...
- 基于wpa_supplicant库的WIFI连接功能实现--wpa_cli命令解析
从这里开始,就正式进入到主题了,笔者分几节来介绍如何一点点实现基于wpa_supplicant库的WIFI连接功能.最终实现的就是类似于智能手机上的wifi连接界面功能.开发平台是linux3.2.0 ...
- 基于keil5自动配置stm32f103标准库的官网freertos移植
基于keil5自动配置stm32f103标准库的官网freertos移植 前言 序言:利用keil5自动配置stm32f103标准库工程 闲话 正式篇 移植官网FreeRTOS 前言 当笔者学习s ...
- Linux配置gdal变量环境,基于GDAL库的LINUX环境下的FY-3D和FY-4A遥感数据处理
王燕婷 摘要 基于GDAL库的功能和其开源.可对栅格空间数据操作的特点,将GDAL与C++语言的完美结合,可极大得发挥其在开发遥感图像处理软件中的优势,并可跨平台应用于不同操作系统下的遥感图像数据处理 ...
- linux使网卡点亮_Linux下 无线网卡配置无线唤醒功能的方法
原标题:Linux下 无线网卡配置无线唤醒功能的方法 导读Wake-on-LAN(WOL)是一个以太网标准,它允许服务器通过一个网络消息而被打开.你需要发送一个"魔法数据包"到支持 ...
- python jieba库分词_Python基于jieba库进行简单分词及词云功能实现方法
本文实例讲述了Python基于jieba库进行简单分词及词云功能实现方法.分享给大家供大家参考,具体如下: 目标: 1.导入一个文本文件 2.使用jieba对文本进行分词 3.使用wordcloud包 ...
- java程序如何解代数方程_基于代数方程库Algebra.js解二元一次方程功能示例
本文实例讲述了基于代数方程库Algebra.js解二元一次方程功能.分享给大家供大家参考,具体如下: 假设二元一次方程如下: x + y = 11 x - y = 5 解方程如下: 测试algebra ...
- python微信加人_Python 基于wxpy库实现微信添加好友功能(简洁)
Python 基于wxpy库实现微信添加好友功能(简洁) 更新时间:2019年11月29日 10:21:29 作者:帅鸽水煮鱼 这篇文章主要介绍了Python 基于wxpy库实现微信添加好友功能,本文 ...
- python语言头像_Python基于identicon库创建类似Github上用的头像功能
本文实例讲述了Python基于identicon库创建类似Github上用的头像功能.分享给大家供大家参考,具体如下: Identicon在很多大型IT网站上可以见到,比如Github,Sourcef ...
- 正点原子STM32(基于HAL库)3
目录 高级定时器实验 高级定时器简介 高级定时器输出指定个数PWM 实验 高级定时器输出指定个数PWM原理 TIM1/TIM8 寄存器 硬件设计 课堂源码(输出指定个数PWM灯就闪几次) 程序设计 下 ...
最新文章
- 再议Unity 3D
- Qt中的QPushButton组件
- Orleans学习总结(二)--创建工程
- linux用的那国语言,在linux上可以使用什么变成语言
- 36/100. Generate Parentheses
- 中点坐标公式 矩形_压轴题必备|中考数学“动点坐标”问题,这个万能解法人人都能学会!...
- Nike Kyrie 1 Performance Review
- hdu 4738 桥
- Xception总结
- python 协程 php,python3.x,协程_python协程练习部分代码的理解?,python3.x,协程,asyncio - phpStudy...
- mysql取第二大_mysql – SQL:从一行列中获取第二大值
- 聚类的基本概念-聚类与分类的区别
- css设置背景颜色透明度
- Linux系统启动过程及其修复过程简析(CentOS5、6)
- CodeForces - 1312E Array Shrinking 区间dp
- gRPC大数据量消息传递方法
- 【高级软件工程课后作业】
- 转一篇人生感悟,写的很好
- 三个可替代“迅雷”的下载软件,速度超快!
- OSI七层网络模型详解!