RTC時鐘源
RTC是一個獨立的時鐘源
RTC寄存器
RTC控制寄存器 (RTC_CRH, RTC_CRL)
RTC預分頻裝載寄存器 (RTC_PRLH, RTC_PRLL)
RTC預分頻余數寄存器 (RTC_DIVH, RTC_DIVL)
RTC計數器寄存器 (RTC_CNTH, RTC_CNTL)
RTC鬧鐘寄存器 (RTC_ALRH ,RTC_ALRL)
RTC控制寄存器高位——RTC_CRH 寄存器
作用:配置3個專門的可屏蔽中斷(溢出中斷、鬧鐘中斷、秒中斷)使能。
注意:系統復位后所有的中斷被屏蔽,因此可通過寫RTC寄存器來
確保在初始化后沒有掛起的中斷請求。當外設正在完成前一次寫操作時(標志位RTOFF=0),不
能對RTC_CRH寄存器進行寫操作。
RTC控制寄存器低位——RTC_CRL 寄存器
一般用到該寄存器的 3,4,5位
第 3 位為寄存器同步標志位,我們在修改控制寄存器 RTC_CRH/CRL 之前,必須先判斷該位,是否已經同步了,如果沒有則等待同步
第 4 位為配置標位,在軟件修改 RTC_CNT/RTC_ALR/RTC_PRL 的值的時候,必須先軟件置位該位,以允許進入配置模式
第 5 位為 RTC 操作位,該位由硬件操作,軟件只讀。通過該位可以判斷上次對 RTC 寄存器的操作是否完成,如果沒有,我們必須等待上一次操作結束才能開始下一次,也就是判斷RTOFF位是否置位。
三個位總結如下:
① 修改CRH/CRL寄存器,必須先判斷RSF位,確定已經同步。
② 修改CNT,ALR,PRL的時候,必須先配置CNF位進入配置模式,修改完之后,設置CNF位為0退出配置模式
③ **同時在對RTC相關寄存器寫操作之前,必須判斷上一始終是否關閉
-
寄存器
+關注
關注
31文章
5390瀏覽量
121892 -
RTC
+關注
關注
2文章
585瀏覽量
67419 -
時鐘源
+關注
關注
0文章
95瀏覽量
16095
發布評論請先 登錄
相關推薦
STM32CubeMX之RTC鬧鐘喚醒停機模式基本知識介紹
STM32單片機RTC時鐘的使用方法及步驟

淺談RTC實時時鐘特征與原理
嵌入式學習之RTC時鐘

【STM32】RTC詳解

STM32學習筆記之RTC實時時鐘1

STM32學習筆記之RTC實時時鐘2

評論