步骤:
1、RTC初始化
2、使能电源时钟,并使能 RTC 及 及 RTC 后备寄存器写访问。
3、开启外部低速振荡器 LSE ,选择 RTC 时钟,并使能。(使用LSE时钟32.768kHz)
4、设置时间和日期
5、获取时间和日期(※)
- 1、RTC初始化
RTC_HandleTypeDef RTC_HandleStruct;
RTC_HandleStruct.Instance = RTC; //RTC外设地址
RTC_HandleStruct.Init.HourFormat = RTC_HOURFORMAT_12; //时间格式12小时或24小时
RTC_HandleStruct.Init.AsynchPrediv = 0x7f; //异步预分频系数
RTC_HandleStruct.Init.SynchPrediv = 0xff; //同步预分频系数
RTC_HandleStruct.Init.OutPut = RTC_OUTPUT_DISABLE; //选择连接到 RTC_ALARM 输出的标志
RTC_HandleStruct.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH; //设置 RTC_ALARM 的输出极性
RTC_HandleStruct.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN; //设置 RTC_ALARM 的输出类型为开漏输出还是推挽输出
HAL_RTC_Init(&RTC_HandleStruct);
Fck_spre=Frtcclk/[(PREDIV_S+1)*( PREDIV_A+1)]
PREDIV_A