|
STM32G474xx HAL User Manual
|
RTC HAL模块驱动程序。本文提供固件函数以管理实时时钟(RTC)外设的以下功能:+ 初始化/反初始化函数+ 日历(时间和日期)配置+ 闹钟(闹钟A和闹钟B)配置+ 唤醒定时器配置+ 时间戳配置+ 篡改检测配置+ 备份数据寄存器配置+ RTC篡改和时间戳引脚选择+ 中断和标志管理。 更多...
#include "stm32g4xx_hal.h"函数 | |
| HAL_StatusTypeDef | HAL_RTC_Init (RTC_HandleTypeDef *hrtc) |
| 初始化RTC外设。 | |
| HAL_StatusTypeDef | HAL_RTC_DeInit (RTC_HandleTypeDef *hrtc) |
| 反初始化RTC外设。 | |
| HAL_StatusTypeDef | HAL_RTC_RegisterCallback (RTC_HandleTypeDef *hrtc, HAL_RTC_CallbackIDTypeDef CallbackID, pRTC_CallbackTypeDef pCallback) |
| 注册用户RTC回调函数以替代弱预定义回调。 | |
| HAL_StatusTypeDef | HAL_RTC_UnRegisterCallback (RTC_HandleTypeDef *hrtc, HAL_RTC_CallbackIDTypeDef CallbackID) |
| 注销RTC回调函数。回调将重定向到弱预定义回调。 | |
| __weak void | HAL_RTC_MspInit (RTC_HandleTypeDef *hrtc) |
| 初始化RTC MSP。 | |
| __weak void | HAL_RTC_MspDeInit (RTC_HandleTypeDef *hrtc) |
| 反初始化RTC MSP。 | |
| HAL_StatusTypeDef | HAL_RTC_SetTime (RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format) |
| 设置RTC当前时间。 | |
| HAL_StatusTypeDef | HAL_RTC_GetTime (RTC_HandleTypeDef *hrtc, RTC_TimeTypeDef *sTime, uint32_t Format) |
| 获取RTC当前时间。 | |
| HAL_StatusTypeDef | HAL_RTC_SetDate (RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format) |
| 设置RTC当前日期。 | |
| HAL_StatusTypeDef | HAL_RTC_GetDate (RTC_HandleTypeDef *hrtc, RTC_DateTypeDef *sDate, uint32_t Format) |
| 获取RTC当前日期。 | |
| HAL_StatusTypeDef | HAL_RTC_SetAlarm (RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format) |
| 设置指定的RTC闹钟。 | |
| HAL_StatusTypeDef | HAL_RTC_SetAlarm_IT (RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Format) |
| 设置指定的RTC闹钟(带中断)。 | |
| HAL_StatusTypeDef | HAL_RTC_DeactivateAlarm (RTC_HandleTypeDef *hrtc, uint32_t Alarm) |
| 禁用指定的RTC闹钟。 | |
| HAL_StatusTypeDef | HAL_RTC_GetAlarm (RTC_HandleTypeDef *hrtc, RTC_AlarmTypeDef *sAlarm, uint32_t Alarm, uint32_t Format) |
| 获取RTC闹钟值和掩码。 | |
| void | HAL_RTC_AlarmIRQHandlers (RTC_HandleTypeDef *hrtc) |
| 处理闹钟中断请求。 | |
| __weak void | HAL_RTC_AlarmAEventCallback (RTC_HandleTypeDef *hrtc) |
| 闹钟A回调函数。 | |
| HAL_StatusTypeDef | HAL_RTC_PollForAlarmAEvent (RTC_HandleTypeDef *hrtc, uint32_t Timeout) |
| 处理闹钟A轮询请求。 | |
| HAL_StatusTypeDef | HAL_RTC_WaitForSynchro (RTC_HandleTypeDef *hrtc) |
| 等待RTC时间和日期寄存器(RTC_TR和RTC_DR)与RTC APB时钟同步。 | |
| HAL_RTCStateTypeDef | HAL_RTC_GetState (RTC_HandleTypeDef *hrtc) |
| 返回RTC句柄状态。 | |
| HAL_StatusTypeDef | RTC_EnterInitMode (RTC_HandleTypeDef *hrtc) |
| 进入RTC初始化模式。 | |
| HAL_StatusTypeDef | RTC_ExitInitMode (RTC_HandleTypeDef *hrtc) |
| 退出RTC初始化模式。 | |
| uint8_t | RTC_ByteToBcd2 (uint8_t Value) |
| 将两位十进制数转换为BCD格式。 | |
| uint8_t | RTC_Bcd2ToByte (uint8_t Value) |
| 从两位BCD转换为二进制。 | |
| void | HAL_RTC_DST_Add1Hour (RTC_HandleTypeDef *hrtc) |
| 夏令时,在日历上一次性添加一小时,无需经过初始化过程。 | |
| void | HAL_RTC_DST_Sub1Hour (RTC_HandleTypeDef *hrtc) |
| 夏令时,从日历上一次性减去一小时,无需经过初始化过程。 | |
| void | HAL_RTC_DST_SetStoreOperation (RTC_HandleTypeDef *hrtc) |
| 夏令时,设置存储操作位。 | |
| void | HAL_RTC_DST_ClearStoreOperation (RTC_HandleTypeDef *hrtc) |
| 夏令时,清除存储操作位。 | |
| uint32_t | HAL_RTC_DST_ReadStoreOperation (RTC_HandleTypeDef *hrtc) |
| 夏令时,读取存储操作位。 | |
RTC HAL模块驱动程序。本文提供固件函数以管理实时时钟(RTC)外设的以下功能:+ 初始化/反初始化函数+ 日历(时间和日期)配置+ 闹钟(闹钟A和闹钟B)配置+ 唤醒定时器配置+ 时间戳配置+ 篡改检测配置+ 备份数据寄存器配置+ RTC篡改和时间戳引脚选择+ 中断和标志管理。
版权所有 (c) 2019 STMicroelectronics。保留所有权利。
本软件根据LICENSE文件中列出的条款进行许可。如果没有随软件附带LICENSE文件,则按原样提供。
===============================================================================
##### RTC工作条件 #####
===============================================================================
[..] 实时时钟(RTC)和RTC备份寄存器可在主VDD电源关闭时
从VBAT电压供电。
为在VDD关闭时保留RTC备份寄存器内容并为RTC供电,
可将VBAT引脚连接到由电池或其他源提供的可选待机电压。
##### 备份域复位 #####
===============================================================================
[..] 备份域复位将所有RTC寄存器和RCC_BDCR寄存器设置为其复位值。
发生以下任一事件时生成备份域复位:
(#) 软件复位,通过在RCC备份域控制寄存器(RCC_BDCR)中设置BDRST位触发。
(#) VDD或VBAT上电,如果两个电源之前都处于关闭状态。
(#) 篡改检测事件复位所有数据备份寄存器。
##### 备份域访问 #####
==================================================================
[..] 复位后,备份域(RTC寄存器和RTC备份数据寄存器)
受到保护以防止可能的意外写入访问。
[..] 要启用对RTC域和RTC寄存器的访问,请按以下步骤操作:
(+) 使用__HAL_RCC_PWR_CLK_ENABLE()函数使能功率控制器(PWR)APB1接口时钟。
(+) 使用HAL_PWR_EnableBkUpAccess()函数启用对RTC域的访问。
(+) 使用__HAL_RCC_R