STM32F429为什么我可以';不读RTC?

STM32F429为什么我可以';不读RTC?,stm32,real-time-clock,Stm32,Real Time Clock,我对STM43F429上的RTC有一个问题。我有一个董事会,管理RTC的日期和时间与电池备份。 在一些测试之后,我遇到了这个问题:在重置之后,当我第一次尝试读取RTC时间时,RTC似乎停止了(我看到hh:mm:ss点了),但是如果我查看内部RTC寄存器(带调试器),一切都正常。。。所以我看不清现在的时间。 要解决这个问题,我必须先读取日期,然后才能读取时间,RTC运行正常。。我不明白为什么我必须先看日期才能看时间。有人能解释一下吗?谢谢当来自RTC的数据将与它们的影子寄存器同步时,您需要等待,它

我对STM43F429上的RTC有一个问题。我有一个董事会,管理RTC的日期和时间与电池备份。 在一些测试之后,我遇到了这个问题:在重置之后,当我第一次尝试读取RTC时间时,RTC似乎停止了(我看到hh:mm:ss点了),但是如果我查看内部RTC寄存器(带调试器),一切都正常。。。所以我看不清现在的时间。
要解决这个问题,我必须先读取日期,然后才能读取时间,RTC运行正常。。我不明白为什么我必须先看日期才能看时间。有人能解释一下吗?谢谢

当来自RTC的数据将与它们的影子寄存器同步时,您需要等待,它是每两个RTC时钟一次,并且可以使用
RTC_ISR.RSF
(寄存器同步标志)进行检查


更多信息请参见《参考手册》第26.3.2节“实时时钟和日历”。

谢谢。。。是的,问题可能是正确等待Synk时间。现在一切都好了!