作為MCU運(yùn)行的基礎(chǔ),時鐘是MCU各個模塊工作時序的最小時間單位,推動MCU的各指令執(zhí)行,是MCU選型的一個重要指標(biāo)。CKS32F107xx系列MCU具有眾多的外設(shè),但并非所有的外設(shè)均需要系統(tǒng)時鐘的高頻率,并且高時鐘頻率將導(dǎo)致功耗增加、抗電磁干擾能力變?nèi)?,因此,CKS32F107xx系列MCU內(nèi)部具備多個時鐘源。本文將對CKS32F107xx系列時鐘組成進(jìn)行介紹,以幫助讓用戶對系統(tǒng)時鐘了解。
CKS32F107系列時鐘介紹
在CKS32F107xx系列MCU中,有HSI、HSE、LSI、LSE、PLL五個重要的時鐘源。從時鐘頻率來分可以分為高速時鐘源(HSI、HSE、PLL)和低速時鐘源(LSI、LSE);從來源可分為外部時鐘源(HSE、LSE)和內(nèi)部時鐘源(HSI、LSI、PLL);從功能應(yīng)用配置劃分可分為系統(tǒng)時鐘(SYSCLK)、時鐘安全系統(tǒng)(CSS)、獨(dú)立看門狗時鐘、RTC時鐘。下圖為CKS32F107xx系列MCU時鐘樹時鐘樹:
圖1CKS32F107系列MCU時鐘樹
HSE時鐘
高速外部時鐘信號(HSE)由以下兩種時鐘源產(chǎn)生:
●HSE外部晶體/陶瓷諧振器
●HSE用戶外部時鐘
為了減少時鐘輸出的失真和縮短啟動穩(wěn)定時間,晶體/陶瓷諧振器和負(fù)載電容器必須盡可能地靠近振蕩器引腳。負(fù)載電容值必須根據(jù)所選擇的振蕩器來調(diào)整。
圖2HSE時鐘源
外部晶體/陶瓷諧振器(HSE晶振):
4~16Mz外部振蕩器可為系統(tǒng)提供更為精確的時鐘。相關(guān)的硬件配置可參考圖1,在時鐘控制寄存器RCC_CR中的HSERDY位用來指示高速外部振蕩器是否穩(wěn)定。直到這該位被硬件置’1’,才能使用HSECLK。如果在時鐘中斷寄存器RCC_CIR中允許產(chǎn)生中斷,將會產(chǎn)生相應(yīng)中斷。
HSE晶振可以通過設(shè)置時鐘控制寄存器里RCC_CR中的HSEON位被啟動和關(guān)閉。
HSE用戶外部時鐘(HSE旁路):
在這個模式里,必須提供外部時鐘。它的頻率最高可達(dá)25MHz。用戶可通過設(shè)置在時鐘控制寄存器中的HSEBYP和HSEON位來選擇這一模式。外部時鐘信號(50%占空比的方波、正弦波或三角波)必須連到OSC_IN引腳,同時保證OSC_OUT引腳懸空。見圖1。
HSI時鐘
HSI時鐘信號由內(nèi)部8MHz的RC振蕩器產(chǎn)生,可直接作為系統(tǒng)時鐘,也可在不分頻或2分頻后作為PLL輸入源。HIS RC振蕩器能夠在不需要任何外部器件的條件下提供系統(tǒng)時鐘。它的啟動時間比HSE晶體振蕩器短。但是,即使在校準(zhǔn)之后它的時鐘頻率精度仍較HSE晶振差。
PLL
主PLL以下述時鐘源之一為輸入,產(chǎn)生倍頻的輸出:
●HSI時鐘
●HSI的二分頻時鐘
●HSE通過一個可配置分頻器提供的時鐘
●PLL2通過一個可配置分頻器提供的時鐘
PLL2和PLL3由HSE通過一個可配置的分頻器提供時鐘。必須在使能每個PLL之前完成PLL的配置(選擇時鐘源、預(yù)分頻系數(shù)和倍頻系數(shù)等),同時應(yīng)該在它們的輸入時鐘穩(wěn)定(就緒位)后才能使能。一旦使能了PLL,這些參數(shù)將不能再被改變。當(dāng)改變主PLL的輸入時鐘源時,必須在選中了新的時鐘源(通過時鐘配置寄存器(RCC_CFGR)的PLLSRC位)之后才能關(guān)閉原來的時鐘源。時鐘中斷寄存器(RCC_CIR),可以在PLL就緒時產(chǎn)生一個中斷。
LSE時鐘
LSE晶振是一個32.768kHz的低速外部晶體或陶瓷諧振器。它為實時時鐘或者其他定時功能提供一個低功耗且精確的時鐘源。
(1)外部晶體/陶瓷諧振器(LSE晶振)
LSE晶振通過在備份域控制寄存器(RCC_BDCR)里的LSEON位啟動和關(guān)閉。在備份域控制寄存器(RCC_BDCR)里的LSERDY指示LSE晶體振蕩是否穩(wěn)定。在啟動階段,直到這個位被硬件置’1’后,LSE時鐘信號才能被使用。如果在時鐘中斷寄存器里被允許,可產(chǎn)生中斷請求。
(2)外部時鐘源(LSE旁路)
在這個模式里必須提供一個32.768kHz頻率的外部時鐘源。可以通過設(shè)置在備份域控制寄存器(RCC_BDCR)里的LSEBYP和LSEON位來選擇這個模式。具有50%占空比的外部時鐘信號(方波、正弦波或三角波)必須連到OSC32_IN引腳,同時保證OSC32_OUT引腳懸空。
LSI時鐘
LSI RC擔(dān)當(dāng)一個低功耗時鐘源的角色,它可以在停機(jī)和待機(jī)模式下保持運(yùn)行,為獨(dú)立看門狗和RTC提供時鐘。LSI時鐘頻率大約40kHz(在30kHz和60kHz之間)。進(jìn)一步信息請參考數(shù)據(jù)手冊中有關(guān)電氣特性部分。
LSI RC可以通過控制/狀態(tài)寄存器(RCC_CSR)里的LSION位來啟動或關(guān)閉。在控制/狀態(tài)寄存器(RCC_CSR)里的LSIRDY位指示低速內(nèi)部振蕩器是否穩(wěn)定。在啟動階段,直到這個位被硬件設(shè)置為’1’后,該時鐘才能使用。如果在時鐘中斷寄存器(RCC_CIR)里被允許,將產(chǎn)生LSI中斷請求。
系統(tǒng)時鐘(SYSCLK)選擇
系統(tǒng)復(fù)位后,HSI振蕩器被選為系統(tǒng)時鐘。當(dāng)時鐘源被直接或通過PLL間接作為系統(tǒng)時鐘時,它將不能被停止。當(dāng)系統(tǒng)時鐘從一個時鐘源到另一個時鐘源切換時,只有當(dāng)目標(biāo)時鐘源準(zhǔn)備就緒(經(jīng)過啟動穩(wěn)定階段的延遲或PLL穩(wěn)定),才能進(jìn)行切換,否則,系統(tǒng)時鐘的切換不允許發(fā)生。在時鐘控制寄存器(RCC_CR)的狀態(tài)位會指示哪個時鐘已經(jīng)準(zhǔn)備好了,哪個時鐘目前被用作系統(tǒng)時鐘。
時鐘安全系統(tǒng)(CSS)
時鐘安全系統(tǒng)可以通過軟件被激活。一旦其被激活,時鐘監(jiān)測器將在HSE振蕩器啟動穩(wěn)定后被使能,并在HSE時鐘關(guān)閉后關(guān)閉。
如果HSE時鐘發(fā)生故障,HSE振蕩器被自動關(guān)閉,時鐘失效事件將被送到高級定時器(TIM1的剎車輸入端,并產(chǎn)生時鐘安全中斷CSSI,允許軟件完成營救操作。此CSSI中斷連接到內(nèi)核的NMI中斷(不可屏蔽中斷)。
需要強(qiáng)調(diào)的是一旦CSS被激活,并且HSE時鐘出現(xiàn)故障,CSS中斷就產(chǎn)生,并且NMI(不可屏蔽的中斷)也自動產(chǎn)生。NMI將被不斷執(zhí)行,直到CSS中斷掛起位被清除。因此,在NMI(不可屏蔽的中斷)的處理程序中必須通過設(shè)置時鐘中斷寄存器(RCC_CIR)里的CSSC位來清除CSS中斷。
如果HSE振蕩器被直接或間接地作為系統(tǒng)時鐘,(間接的意思是:它被作為PLL輸入時鐘,并且PLL時鐘被作為系統(tǒng)時鐘),時鐘故障將導(dǎo)致系統(tǒng)時鐘自動切換到HSI振蕩器,同時外部HSE振蕩器被關(guān)閉。在時鐘失效時,如果HSE振蕩器時鐘(被分頻或未被分頻)是用作系統(tǒng)時鐘的PLL的輸入時鐘,PLL也將被關(guān)閉。
獨(dú)立看門狗時鐘
如果獨(dú)立看門狗已經(jīng)由硬件選項或軟件啟動,LSI振蕩器將被強(qiáng)制在打開狀態(tài),并且不能被關(guān)閉。在LSI振蕩器穩(wěn)定后,時鐘供應(yīng)給IWDG模塊。
RTC時鐘
通過設(shè)置備份域控制寄存器(RCC_BDCR)里的RTCSEL[1:0]位,RTCCLK時鐘源可以由HSE/128、LSE或LSI時鐘提供。除非備份域復(fù)位,此選擇不能被改變。
LSE時鐘在備份域里,但HSE和LSI時鐘不在備份域。因此:
(1)如果LSE被選為RTC時鐘:只要VBAT維持供電,即使VDD供電被切斷,RTC仍能工作。
(2)如果LSI被選為RTC時鐘:如果VDD供電被切斷,RTC不能工作。
(3)如果HSE時鐘128分頻后作為RTC時鐘:如果VDD供電被切斷或內(nèi)部電壓調(diào)壓器被關(guān)閉(1.5V域的供電被切斷),則RTC狀態(tài)不確定。
時鐘輸出(MCO)
微控制器允許輸出時鐘信號到外部MCO引腳。相應(yīng)的GPIO端口寄存器必須被配置為相應(yīng)功能。以下8個時鐘信號可被選作MCO時鐘:
●SYSCLK
●HSI
●HSE
●PLL時鐘的二分頻
●PLL2時鐘
●PLL3時鐘的二分頻
●XT13-25MHz外部晶振時鐘(用于以太網(wǎng))
●PLL3時鐘(用于以太網(wǎng))
時鐘配置寄存器(RCC_CFGR)中的MCO[3:0]位控制。
審核編輯:劉清
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5319瀏覽量
170486 -
振蕩器
+關(guān)注
關(guān)注
28文章
3788瀏覽量
138732 -
寄存器
+關(guān)注
關(guān)注
31文章
5271瀏覽量
119654 -
RTC
+關(guān)注
關(guān)注
2文章
515瀏覽量
66125 -
電壓調(diào)壓器
+關(guān)注
關(guān)注
0文章
4瀏覽量
707
原文標(biāo)題:MCU微課堂|CKS32F107xx系列時鐘介紹
文章出處:【微信號:中科芯MCU,微信公眾號:中科芯MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論