新聞中心

        EEPW首頁 > 嵌入式系統 > 牛人業話 > STM32再學習——實時時鐘(RTC)

        STM32再學習——實時時鐘(RTC)

        作者:jobs 時間:2013-10-23 來源:電子產品世界 收藏

          ,是Real Time Counter的縮寫。在中,其實是一組連續計數的,各個產品及系列各不相同。因此,在相應的軟件配置下,可提供的功能。當然,修改這個的值也就重新設置了系統當前的時間和日期。

        本文引用地址:http://www.104case.com/article/182407.htm

          只是一個時鐘,但與相連的有兩個系統時鐘,一個是APB1接口的PCLK1另一個是RTC時鐘[注意1]。這樣,RTC功能也就分為兩個部分:第一部分,APB1接口部分,與APB1總線相連,也就是通過這條總線對其進行讀寫操作。另一部,RTC核,由一系列可編程組成,這部分又再細分為兩個組件:預分頻模塊與32位可編程計數器。預分頻模塊用來產生最長為1秒的RTC時間基準,而32位的可編程的計數器可被初始化為當前的系統時間。

          下圖為RTC簡化框圖:

          讀RTC

          從上面的工作原理可知,RTC核完全獨立于RTC APB1接口,軟件通過APB1接口來訪問RTC的各項參數,包括預分頻值、計數器值等等,但是這些參數值只在RTC時鐘的上升沿被更新,之后,RTC時鐘會與RTC APB1時鐘進行重新同步。這里會有一些問題出現,就是在APB1接口剛剛被開啟時,第一次的內部更新之前,那么此時從RTC中讀出的第一個值可能被破壞了,例如下面所述的三種情況:

        •   發生系統復位或電源復位

        •   系統剛從待機模式喚醒

        •   系統剛從停機模式喚醒

          可以簡單得出,在APB1接口被禁止時(復位,無時鐘或斷電)RTC核仍保持運行狀態。因此,在禁止了RTC的APB1接口后,軟件首先須等等RSF位被硬件置1.

          RTC功能配置

          1. 查詢RTOFF 位,直到RTOFF 的值變為“1”

          2. 置CNF 值為1,進入配置模式

          3. 對一個或多個RTC 寄存器進行寫操作

          4. 清除CNF 標志位,退出配置模式

          5. 查詢RTOFF,直至RTOFF 位變為“1” 以確認寫操作已經完成。

          僅當CNF 標志位被清除時,寫操作才能進行,這個過程至少需要3 個RTCCLK 周期。

          注意1:RTC時鐘必須小于PCLK1時鐘的四分之一以上。

         

        塵埃粒子計數器相關文章:塵埃粒子計數器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 萝北县| 韶山市| 德格县| 南郑县| 河曲县| 邻水| 宣化县| 资溪县| 大姚县| 梨树县| 东海县| 鄢陵县| 商丘市| 资阳市| 清镇市| 南漳县| 株洲市| 洮南市| 文化| 台南县| 西林县| 巢湖市| 游戏| 绥宁县| 大同市| 探索| 高青县| 两当县| 鹤山市| 拉孜县| 垦利县| 赫章县| 通化市| 汶上县| 西贡区| 隆化县| 同江市| 岱山县| 海林市| 鸡西市| 江西省|