下面就以STM32開發(fā)板中最常見的STM32F103系列芯片的時(shí)鐘為例,介紹一下STM32中的時(shí)鐘。
時(shí)鐘作用
說到時(shí)鐘,你一定會(huì)問,這是用來計(jì)時(shí)的嗎?沒錯(cuò),是用來計(jì)時(shí)的,但這只是它在STM32中的一項(xiàng)功能而已,下面就為你列出了時(shí)鐘的具體功能。
計(jì)時(shí)作用(供給某些計(jì)數(shù)器統(tǒng)計(jì)時(shí)間);
控制時(shí)序(串口數(shù)據(jù)的傳輸,只能一位一位的傳輸);
控制信號(hào)(將時(shí)鐘的上升下降沿作為獨(dú)特的控制標(biāo)志)。
STM32時(shí)鐘模型
STM32內(nèi)部時(shí)鐘樹
時(shí)鐘源
時(shí)鐘源就是產(chǎn)生時(shí)鐘的電路啦,我們來一起看一下,什么樣的電路可以產(chǎn)生時(shí)鐘。
STM32中的時(shí)鐘源分為以下五種:
低速內(nèi)部時(shí)鐘LSI:頻率為40kHz ;
高速內(nèi)部時(shí)鐘HSI :頻率為8MHz ;
低速外部時(shí)鐘OSC_32:頻率為32.7678kHz ;
高速外部時(shí)鐘OSC:頻率范圍4-16MHz ;
時(shí)鐘輸出MCO:為其他設(shè)備提供時(shí)鐘源。
在對(duì)時(shí)鐘頻率要求不高的情況下,我們可以選擇內(nèi)部RC振蕩器時(shí)鐘作為單片機(jī)工作的時(shí)鐘源。如果對(duì)時(shí)鐘精度要求較高,我們要選擇外部石英晶體振蕩器(晶振),作為單片機(jī)的時(shí)鐘源,因?yàn)閮?nèi)部時(shí)鐘用的是模擬電路組成的振蕩器,誤差較大,在實(shí)時(shí)性要求比較高的場(chǎng)合(串口通信、IIC通信等)容易造成不可預(yù)知的錯(cuò)誤。
時(shí)鐘相對(duì)復(fù)雜的意義主要是為不同外設(shè)提供合適的時(shí)鐘頻率,主要目的是為了節(jié)能、低功耗。
高速時(shí)鐘:用于高速外設(shè)I/O、串口通信、SPI等等;
低速時(shí)鐘:用于低速外設(shè)RTC看門狗 ;
倍頻器:時(shí)鐘與外設(shè)進(jìn)行時(shí)鐘適配。
相關(guān)寄存器講解
PLLSRC鎖相環(huán)倍頻器時(shí)鐘源選擇內(nèi)部高速時(shí)鐘2分頻外部高速時(shí)鐘
PLLMUL鎖相環(huán)時(shí)鐘倍頻器將PLLSRC選擇的時(shí)鐘進(jìn)行倍頻,最大不能超過72MHz
PLLXTPRE鎖相環(huán)時(shí)鐘選擇選擇外部時(shí)鐘作為鎖相環(huán)倍頻器時(shí)鐘源選擇外部時(shí)鐘2分頻后作為鎖相環(huán)倍頻器時(shí)鐘源
SW系統(tǒng)時(shí)鐘選擇選擇內(nèi)部高速時(shí)鐘作為系統(tǒng)時(shí)鐘選擇鎖相環(huán)倍頻時(shí)鐘作為系統(tǒng)時(shí)鐘選擇外部高速時(shí)鐘作為系統(tǒng)時(shí)鐘
AHB系統(tǒng)時(shí)鐘分頻器
CSS時(shí)鐘安全監(jiān)測(cè)單元當(dāng)外部時(shí)鐘意外故障,CSS在短時(shí)間內(nèi)切換到內(nèi)部高速時(shí)鐘使單片機(jī)工作不中斷
RTCCLK實(shí)時(shí)時(shí)鐘時(shí)鐘源選擇選擇鎖相環(huán)倍頻器時(shí)鐘源128分頻作為實(shí)時(shí)時(shí)鐘時(shí)鐘源選擇外部低速時(shí)鐘作為實(shí)時(shí)時(shí)鐘時(shí)鐘源選擇內(nèi)部低俗時(shí)鐘作為實(shí)時(shí)時(shí)鐘時(shí)鐘源
MCO時(shí)鐘輸出控制鎖相環(huán)時(shí)鐘2分頻輸出內(nèi)部低俗時(shí)鐘輸出內(nèi)部高速時(shí)鐘輸出系統(tǒng)時(shí)鐘輸出
關(guān)于APB1、APB2時(shí)鐘
STM32單片機(jī)外設(shè)掛接在APB1、APB2兩個(gè)橋上,但兩個(gè)橋允許的始終最大頻率不相同,APB2最大允許72MHz,APB1最大只允許36MHz,在使用外設(shè)時(shí)應(yīng)格外注意時(shí)鐘,例如串口一掛接在APB2上,其余串口掛接在APB1上,在串口配置時(shí)應(yīng)注意失蹤頻率的不同造成的波特率配置問題(庫函數(shù)開發(fā)忽略此項(xiàng)內(nèi)容)。
外部時(shí)鐘晶體振蕩器最好選擇8MHz晶振,無論是庫函數(shù),還是Keil默認(rèn)配置啟動(dòng)文件時(shí)鐘配置均是按照外部晶體振蕩器8MHz來進(jìn)行的配置,系統(tǒng)時(shí)鐘72MHz,如果采用其他型號(hào)的晶體震蕩器振還需要自己配置時(shí)鐘樹,對(duì)于新手來說可能存在一定的困難。
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7102瀏覽量
89283 -
STM32
+關(guān)注
關(guān)注
2270文章
10915瀏覽量
356755 -
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1740瀏覽量
131630
原文標(biāo)題:STM32中的時(shí)鐘
文章出處:【微信號(hào):mcugeek,微信公眾號(hào):MCU開發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
一千余字解讀stm32時(shí)鐘樹
![一千余字解讀<b class='flag-5'>stm32</b><b class='flag-5'>時(shí)鐘</b>樹](https://file.elecfans.com/web2/M00/09/16/pYYBAGD0FvWAeWpFAAAb1Fux1oA753.jpg)
STM32F103×8/STM32F103×B MCU手冊(cè)
基于STM32的WiFi聯(lián)網(wǎng)自動(dòng)校準(zhǔn)時(shí)鐘設(shè)計(jì)
![基于<b class='flag-5'>STM32</b>的WiFi聯(lián)網(wǎng)自動(dòng)校準(zhǔn)<b class='flag-5'>時(shí)鐘</b>設(shè)計(jì)](https://file1.elecfans.com/web1/M00/F2/E9/wKgZoWcOAFmAMrm8AAGVhg_XgI4296.jpg)
stm32用串口燒錄怎么設(shè)置
時(shí)鐘抖動(dòng)和時(shí)鐘偏移的區(qū)別
關(guān)于STM32的32.768K時(shí)鐘晶振疑問求解
STM32如何確定ADC的時(shí)鐘頻率?
求助,為什么STM32要設(shè)置時(shí)鐘開關(guān)?
STM32CubeMX 6.5.0時(shí)鐘配置頁面的ADC時(shí)鐘源無法配置怎么解決?
如何解決同步時(shí)鐘系統(tǒng)中的常見問題和故障?
![如何解決同步<b class='flag-5'>時(shí)鐘</b>系統(tǒng)<b class='flag-5'>中</b>的常見問題和故障?](https://file1.elecfans.com/web2/M00/C4/EE/wKgZomX4-ymAO79QAADMxksXQfE068.png)
哪些因此會(huì)導(dǎo)致時(shí)鐘skew過大呢?FPGA中降低時(shí)鐘skew的幾種方法
![哪些因此會(huì)導(dǎo)致<b class='flag-5'>時(shí)鐘</b>skew過大呢?FPGA<b class='flag-5'>中</b>降低<b class='flag-5'>時(shí)鐘</b>skew的幾種方法](https://file1.elecfans.com/web2/M00/C4/FC/wKgaomXw_ICABz45AAAN3YUTxLY888.jpg)
評(píng)論