下面就以STM32開發(fā)板中最常見的STM32F103系列芯片的時鐘為例,介紹一下STM32中的時鐘。
時鐘作用
說到時鐘,你一定會問,這是用來計時的嗎?沒錯,是用來計時的,但這只是它在STM32中的一項功能而已,下面就為你列出了時鐘的具體功能。
計時作用(供給某些計數(shù)器統(tǒng)計時間);
控制時序(串口數(shù)據(jù)的傳輸,只能一位一位的傳輸);
控制信號(將時鐘的上升下降沿作為獨特的控制標(biāo)志)。
STM32時鐘模型

STM32內(nèi)部時鐘樹

時鐘源
時鐘源就是產(chǎn)生時鐘的電路啦,我們來一起看一下,什么樣的電路可以產(chǎn)生時鐘。
STM32中的時鐘源分為以下五種:
低速內(nèi)部時鐘LSI:頻率為40kHz ;
高速內(nèi)部時鐘HSI :頻率為8MHz ;
低速外部時鐘OSC_32:頻率為32.7678kHz ;
高速外部時鐘OSC:頻率范圍4-16MHz ;
時鐘輸出MCO:為其他設(shè)備提供時鐘源。
在對時鐘頻率要求不高的情況下,我們可以選擇內(nèi)部RC振蕩器時鐘作為單片機(jī)工作的時鐘源。如果對時鐘精度要求較高,我們要選擇外部石英晶體振蕩器(晶振),作為單片機(jī)的時鐘源,因為內(nèi)部時鐘用的是模擬電路組成的振蕩器,誤差較大,在實時性要求比較高的場合(串口通信、IIC通信等)容易造成不可預(yù)知的錯誤。
時鐘相對復(fù)雜的意義主要是為不同外設(shè)提供合適的時鐘頻率,主要目的是為了節(jié)能、低功耗。
高速時鐘:用于高速外設(shè)I/O、串口通信、SPI等等;
低速時鐘:用于低速外設(shè)RTC看門狗 ;
倍頻器:時鐘與外設(shè)進(jìn)行時鐘適配。
相關(guān)寄存器講解
PLLSRC鎖相環(huán)倍頻器時鐘源選擇內(nèi)部高速時鐘2分頻外部高速時鐘
PLLMUL鎖相環(huán)時鐘倍頻器將PLLSRC選擇的時鐘進(jìn)行倍頻,最大不能超過72MHz
PLLXTPRE鎖相環(huán)時鐘選擇選擇外部時鐘作為鎖相環(huán)倍頻器時鐘源選擇外部時鐘2分頻后作為鎖相環(huán)倍頻器時鐘源
SW系統(tǒng)時鐘選擇選擇內(nèi)部高速時鐘作為系統(tǒng)時鐘選擇鎖相環(huán)倍頻時鐘作為系統(tǒng)時鐘選擇外部高速時鐘作為系統(tǒng)時鐘
AHB系統(tǒng)時鐘分頻器
CSS時鐘安全監(jiān)測單元當(dāng)外部時鐘意外故障,CSS在短時間內(nèi)切換到內(nèi)部高速時鐘使單片機(jī)工作不中斷
RTCCLK實時時鐘時鐘源選擇選擇鎖相環(huán)倍頻器時鐘源128分頻作為實時時鐘時鐘源選擇外部低速時鐘作為實時時鐘時鐘源選擇內(nèi)部低俗時鐘作為實時時鐘時鐘源
MCO時鐘輸出控制鎖相環(huán)時鐘2分頻輸出內(nèi)部低俗時鐘輸出內(nèi)部高速時鐘輸出系統(tǒng)時鐘輸出
關(guān)于APB1、APB2時鐘
STM32單片機(jī)外設(shè)掛接在APB1、APB2兩個橋上,但兩個橋允許的始終最大頻率不相同,APB2最大允許72MHz,APB1最大只允許36MHz,在使用外設(shè)時應(yīng)格外注意時鐘,例如串口一掛接在APB2上,其余串口掛接在APB1上,在串口配置時應(yīng)注意失蹤頻率的不同造成的波特率配置問題(庫函數(shù)開發(fā)忽略此項內(nèi)容)。
外部時鐘晶體振蕩器最好選擇8MHz晶振,無論是庫函數(shù),還是Keil默認(rèn)配置啟動文件時鐘配置均是按照外部晶體振蕩器8MHz來進(jìn)行的配置,系統(tǒng)時鐘72MHz,如果采用其他型號的晶體震蕩器振還需要自己配置時鐘樹,對于新手來說可能存在一定的困難。
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7349瀏覽量
95058 -
STM32
+關(guān)注
關(guān)注
2313文章
11196瀏覽量
374764 -
時鐘
+關(guān)注
關(guān)注
11文章
2000瀏覽量
135296
原文標(biāo)題:STM32中的時鐘
文章出處:【微信號:mcugeek,微信公眾號:MCU開發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
STM32H7 的 3 個 ADC 時鐘同步方法
基于STM32F103+ESP01S的復(fù)古桌面輝光管時鐘開源項目介紹
時鐘緩沖器與時鐘發(fā)生器各自優(yōu)勢介紹
LAT1599_STM32G0 系列 CSS 功能及應(yīng)用問題
LAT1180+STM32L4R9 的 QuadSPI Flash 通訊速率不理想應(yīng)用筆記
LAT1215+如何讓 STM32WB 在沒有 LSE 時運行 BLE 應(yīng)用程序
CW32時鐘運行中失效檢測的流程是什么?CW32時鐘運行中失效檢測注意事項有哪些呢?
Proteus中配置STM32外部時鐘HSE如何配置
時鐘設(shè)計優(yōu)化實戰(zhàn)
意法半導(dǎo)體:STM32CubeMX將不再集成到STM32CubeIDE中
時鐘同步在低空經(jīng)濟(jì)中的典型應(yīng)用及發(fā)展方向
時鐘緩沖器在現(xiàn)代化建設(shè)中的作用
AMD Vivado Design Tool綜合中的門控時鐘轉(zhuǎn)換
STM32中的時鐘
評論