STM32學習筆記 系統時鐘初始化函式詳解

2022-09-09 15:36:27 字數 936 閱讀 9276

//系統時鐘初始化函式

//pll:選擇的倍頻數,從2開始,最大值為16

void stm32_clock_init(u8 pll)

}

//不能在這裡執行所有外設復位!否則至少引起串列埠不工作.

//把所有時鐘暫存器復位

void myrcc_deinit(void)

4個暫存器控制systick定時器:

void delay_init()

//延時nus

//nus為要延時的us數.

void delay_us(u32 nus)

while((temp&0x01)&&!(temp&(1<<16))); //等待時間到達

systick->ctrl&=~systick_ctrl_enable_msk; //關閉計數器

systick->val =0x00; //清空計數器

}//延時nms

//注意nms的範圍

//systick->load為24位暫存器,所以,最大延時為:

//nms<=0xffffff*8*1000/sysclk

//sysclk單位為hz,nms單位為ms

//對72m條件下,nms<=1864

void delay_ms(u16 nms)

while((temp&0x01)&&!(temp&(1<<16))); //等待時間到達

systick->ctrl&=~systick_ctrl_enable_msk; //關閉計數器

systick->val =0x00; //清空計數器

} #endif

STM32學習 時鐘系統

眾所周知,時鐘系統是 cpu 的脈搏,就像人的心跳一樣。所以時鐘系統的重要性就不言而 喻了。stm32 的時鐘系統 stm32 的時鐘系統比較複雜,不像簡單的 51 微控制器乙個系統時鐘就可以解決一切。於 是有人要問,採用乙個系統時鐘不是很簡單嗎?為什麼 stm32 要有多個時鐘源呢?因為首先 st...

STM32 學習筆記(4)系統時鐘

cortex m3中,有個systick 系統時鐘,systick 是cm3核心的外設,相關定義在core cm3.h中。系統定時器內嵌在nvic中,是24位的向下遞減的計數器,每記一次數的時間是1 sysclk。一般設定sysclk 72m。而系統時鐘一般用於作業系統產生時基。與systick相關...

STM32系統時鐘

1 參考資料 stm32f1開發指南 庫函式版本 4.3小節 時鐘系統 stm32中文參考手冊v10 第六章 復位和時鐘控制 rcc 2 時鐘系統知識總結 1 stm32有5個時鐘源 hsi hse lsi lse pll hsi是高速內部時鐘,rc振盪器,頻率為8mhz,精度不高 hse是高速外部...