RTC简介
RTC (Real Time Clock):实时时钟。RTC是个独立的定时器。RTC模块拥有一个连续计数的计数器,在相应的软件配置下,可以提供时钟日历的功能。修改计数器的值可以重新设置当前时间和日期,RTC还包含用于管理低功耗模式的自动唤醒单元。
CubeMX配置
1.RCC配置
将HSE选为外部陶瓷晶振即Crystal/Ceramic Resonator。
![图片[1]-STM32HAL库RTC时钟-睿冰小站](https://www.r6b.cn/wp-content/uploads/2022/01/14t01.jpg)
2.配置RTC
激活时钟源与日历,即把Activate Clock Source与Activate calendar打勾
![图片[2]-STM32HAL库RTC时钟-睿冰小站](https://www.r6b.cn/wp-content/uploads/2022/01/14t02.jpg)
进行分频配置,在时钟树将RTC时钟的时钟源配置为HSE_RTC,再分频到1Hz,最后设置初始时间即可。注意,Data Format选择BCD码即BCD data format。
RTC常用函数
/*设置系统时间*/
HAL_StatusTypeDef HAL_RTC_SetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format)
/*读取系统时间*/
HAL_StatusTypeDef HAL_RTC_GetTime(RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format)
/*设置系统日期*/
HAL_StatusTypeDef HAL_RTC_SetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format)
/*读取系统日期*/
HAL_StatusTypeDef HAL_RTC_GetDate(RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format)
© 版权声明
文章版权归原作者所有,转载请注明出处。
THE END