STM學習 時鐘系統講解

2021-10-25 13:41:10 字數 1870 閱讀 8050

主要內容:

rcc_apb2periphclockcmd

(rcc_apb2periph_gpioe|rcc_apb2periph_gpioa,

enable);

//使能pb,pe埠時鐘

void

rcc_apb2periphclockcmd

(uint32_t rcc_apb2periph, functionalstate newstate)

else}--

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

--/** @defgroup apb2_peripheral

/** @defgroup apb2_peripheral

* @*/--

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

----

-#define is_functional_state

(state)(

((state)==

disable)||

((state)==

enable

))

定義:systick定時器就是系統滴答定時器,乙個24 位的倒計數定時器,計到0 時,將從reload 暫存器中自動重裝載定時初值。只要不把它在systick 控制及狀態暫存器中的使能位清除,就永不停息,即使在睡眠模式下也能工作。

systick 控制和狀態暫存器 load

systick 自動重裝載除值暫存器 val

systick 當前值暫存器 calib

systick 校準值暫存器

systick_clksourceconfig()

//systick時鐘源選擇 misc.c檔案中

systick_config

(uint32_t ticks)

//初始化systick,時鐘為hclk,並開啟中斷

//core_cm3.h/core_cm4.**件中

systick中斷服務函式:

void

systick_handler

(void

);

STM32學習 時鐘系統

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

STM32系統時鐘

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

stm32系統時鐘

hsi 約等於8mhz rc振盪器產生的時鐘 hse 外部時鐘 css 如果檢測到外部時鐘的損壞,自動切換到hsi 系統時鐘和rtc時鐘 均有三個 systick定時器 簡單的定時器,常用來做延時和心跳時鐘 24位的倒計時定時器 ctrl暫存器 其實滴答定時器很簡單,就是設定初值,然後延遲,最後就是...