项目场景:
蓝桥杯嵌入式开发板(G431)使用RTC时钟
问题描述
通过HAL_RTC_GetTime获取时间不动
void Update_Time(void)
{
HAL_RTC_GetTime(&hrtc,&RTC_Time,RTC_FORMAT_BIN);
sprintf(text," RTC:%d:%d:%d",RTC_Time.Hours,RTC_Time.Minutes,RTC_Time.Seconds);
LCD_DisplayStringLine(Line2,(u8*)text);
}
原因分析:
未知
解决方案:
要加多一个读取日期的函数HAL_RTC_GetDate,即使不用日期,也要进行读取时间才会正常走
void Update_Time(void)
{
HAL_RTC_GetTime(&hrtc,&RTC_Time,RTC_FORMAT_BIN);
HAL_RTC_GetDate(&hrtc,&RTC_Date,RTC_FORMAT_BIN);
sprintf(text," RTC:%d:%d:%d",RTC_Time.Hours,RTC_Time.Minutes,RTC_Time.Seconds);
LCD_DisplayStringLine(Line2,(u8*)text);
}