調試STM32F429的RTC時鐘時遇到了如下問題:
RTC設置日期時會延遲一段時間(幾秒)或重啓後才生效。
分析過程:
1、分析發現原程序在RTC的WAKEUP中斷裏讀取時間和日期,後關閉此中斷,在while循環中輪詢讀取,再設置日期,發現可以立即生效。所以猜測在WAKEUP中斷裏讀取日期會對日期設置產生影響。
2、重新打開WAKEUP中斷,並刪除其中的日期讀取函數,發現可以正常設置日期。
解決方法:
1、使用WAKEUP中斷讀取時間,輪詢讀取日期。
2、不使用WAKEUP中斷,輪詢讀取時間和日期。