stm32 時鐘系統

2021-09-25 16:40:27 字數 1636 閱讀 1428

1.stm32有5個時鐘源:hsi\hse\lsi\lse\pll

1>hsi是高速內部時鐘,rc振盪器,頻率為8mhz,精度不高

2>hse是高速外部時鐘,可接石英或陶瓷諧振器,或者接外部時鐘源,頻率範圍4mhz-16mhz

3>lsi是低速內部時鐘,rc振盪器,頻率為40mhz,提供低功耗時鐘。wdg

4>lse是低速外部時鐘,接頻率為32.768khz的石英晶體。rtc

5>pll為鎖相環倍頻輸出,其時鐘輸入源可選擇為hsi/2、hse或者hse/2.倍頻可選擇為2-16倍,但是其輸出頻率最大不得超過72mhz。

2.系統時鐘sysclk可**於三個時鐘源

1> hsi振盪器時鐘

2>hse振盪器時鐘

3>pll時鐘

3.stm32可以選擇乙個時鐘訊號輸出到mco腳(pa8)上,可以選擇為pll輸出的2分頻、hsi、hse、或者系統時鐘。

4.任何乙個外設在使用之前,必須首先使能其相應的時鐘。

sysclk(系統時鐘)

ahb(匯流排時鐘)

apb1(匯流排時鐘(低速):速度最高為36mhz)

apb2(匯流排時鐘(高速):速度最高為72mhz)

typedef struct

rcc_typedef;

標頭檔案: stm32f10x_rcc.h      原始檔

:stm32f10x_rcc.c

1.時鐘使能配置:

rcc_lseconfig() 、rcc_hseconfig()、

rcc_hsicmd() 、 rcc_lsicmd() 、 rcc_pllcmd() ……

rcc_pllconfig

()、rcc_sysclkconfig() 、

rcc_rtcclkconfig() …

3.分頻係數選擇配置:

rcc_hclkconfig() 、 rcc_pclk1config() 、 rcc_pclk2config()…

4.外設時鐘使能:

rcc_apb1periphclockcmd():  //apb1線上外設時鐘使能

rcc_apb2periphclockcmd();  //apb2線上外設時鐘使能

rcc_ahbperiphclockcmd();   //ahb線上外設時鐘使能

5.  其他外設時鐘配置:

rcc_adcclkconfig ();  rcc_rtcclkconfig();

6.狀態引數獲取引數:

rcc_getclocksfreq();

rcc_getsysclksource();

rcc_getflagstatus()

7.rcc中斷相關函式 :

rcc_itconfig()、

rcc_getitstatus() 、

rcc_clearitpendingbit()

(資源**於正點原子)

STM32時鐘系統

下面我們根據這張圖說說有關stm32時鐘系統的那些事 io uint32 t cr hsi,hse,css,pll等的使能和就緒標誌位 io uint32 t cfgr pll等的時鐘源選擇,分頻係數設定 io uint32 t ahbenr dma,sdio等時鐘使能 io uint32 t ap...

STM32時鐘系統

1.stm32 有5 個時鐘源 hsi hse lsi lse pll hsi 是高速內部時鐘,rc振盪器,頻率為 8mhz 精度不高。hse 是高速外部時鐘,可接石英 陶瓷諧振器,或者接外部時鐘源,頻率範圍為4mhz 16mhz。lsi是低速內部時鐘,rc振盪器,頻率為 40khz 提供低功耗時鐘...

STM32時鐘系統

在stm32 時鐘系統中,有5 個重要的時鐘源,分別是lsi lse hsi hse pll。按照時鐘頻率分可分為高速時鐘源和低速時鐘源,在這5 個中hsi,hse 以及pll 屬於高速時鐘,lsi 和lse 屬於低速時鐘。按照時鐘 可分為外部時鐘源和內部時鐘源,外部時鐘源就是在stm32 晶振管腳...