1. stm32 有5個時鐘源:hsi、hse、lsi、lse、pll。
①、hsi是高速內部時鐘,rc振盪器,頻率為8mhz,精度不高。
②、hse是高速外部時鐘,可接石英/陶瓷諧振器,或者接外部時鐘源,頻率範圍為4mhz~16mhz。
③、lsi是低速內部時鐘,rc振盪器,頻率為40khz,提供低功耗時鐘。wdg
④、lse是低速外部時鐘,接頻率為32.768khz的石英晶體。rtc
⑤、pll為鎖相環倍頻輸出,其時鐘輸入源可選擇為hsi/2、hse或者hse/2。倍頻可選擇為2~16倍,但是其輸出頻率最大不得超過72mhz。
①、hsi振盪器時鐘
②、hse振盪器時鐘
③、pll時鐘
3.stm32可以選擇乙個時鐘訊號輸出到mco腳(pa8)上,可以選擇為pll輸出的2分頻、hsi、hse、或者系統時鐘。
4.任何乙個外設在使用之前,必須首先使能其相應的時鐘。
rcc相關標頭檔案和韌體庫原始檔,標頭檔案: stm32f10x_rcc.h,檔案:stm32f10x_rcc.c
時鐘使能配置:
rcc_lseconfig() 、rcc_hseconfig()、
rcc_hsicmd() 、 rcc_lsicmd() 、 rcc_pllcmd() ……
rcc_pllconfig ()、 rcc_sysclkconfig() 、
rcc_rtcclkconfig() …
分頻係數選擇配置:
rcc_hclkconfig() 、 rcc_pclk1config() 、 rcc_pclk2config()…
外設時鐘使能:
rcc_apb1periphclockcmd(): //apb1線上外設時鐘使能
rcc_apb2periphclockcmd(); //apb2線上外設時鐘使能
rcc_ahbperiphclockcmd(); //ahb線上外設時鐘使能
其他外設時鐘配置:
rcc_adcclkconfig (); rcc_rtcclkconfig();
狀態引數獲取引數:
rcc_getclocksfreq();
rcc_getsysclksource();
rcc_getflagstatus()
rcc中斷相關函式 :
rcc_itconfig() 、 rcc_getitstatus() 、 rcc_clearitpendingbit()…
STM32學習筆記系列
本系列文章既是本人學習stm32過程中的乙個 記錄了 基礎篇stm32學習筆記之晶元簡介 stm32學習筆記之時鐘分析 stm32學習筆記之記憶體結構 stm32學習筆記之開發環境 基礎篇stm32學習筆記之gpio stm32學習筆記之外部中斷 stm32學習筆記之rtc時鐘 stm32學習筆記之...
STM32學習 時鐘系統
眾所周知,時鐘系統是 cpu 的脈搏,就像人的心跳一樣。所以時鐘系統的重要性就不言而 喻了。stm32 的時鐘系統 stm32 的時鐘系統比較複雜,不像簡單的 51 微控制器乙個系統時鐘就可以解決一切。於 是有人要問,採用乙個系統時鐘不是很簡單嗎?為什麼 stm32 要有多個時鐘源呢?因為首先 st...
STM32 學習筆記(4)系統時鐘
cortex m3中,有個systick 系統時鐘,systick 是cm3核心的外設,相關定義在core cm3.h中。系統定時器內嵌在nvic中,是24位的向下遞減的計數器,每記一次數的時間是1 sysclk。一般設定sysclk 72m。而系統時鐘一般用於作業系統產生時基。與systick相關...