STM32學習筆記——使用SysTick定時器做延時
l

l
各寄存器示意圖:


2.SysTick函數
3.0版以后的STM32固件庫在標準外設庫中移除了SysTick的驅動,因此用戶必須調用CMSIS定義的函數。
CMSIS只提供了一個SysTick設置的函數,替代了STM32原有SysTick驅動的全部函數。
[cpp]view plaincopy
- SysTick_Config(uint32_tticks);
該函數設置了自動重載入計數器(LOAD)的值,SysTick IRQ的優先級,復位了計數器(VAL)的值,開始計數并打開SysTick IRQ中斷。SysTick時鐘默認使用系統時鐘。
此外,還可以使用SysTick_CLKSourceConfig函數來改變時鐘源,使用NVIC_SetPriority設置中斷優先級(往后再深入)。
SysTick_CLKSourceConfig函數
函數名 | SysTick_CLKSourceConfig |
函數原型 | SysTick_CLKSourceConfig(u32 SysTick_CLKSource) |
行為描述 | 配置SysTick的時鐘源 |
輸入參數 | SysTick_CLKSource:SysTick的時鐘源 |
輸出參數 | 無 |
返回值 | 無 |
前提條件 | 無 |
調用函數 | 無 |
SysTick_CLKSource允許值
SysTick_CLKSource | 描述 |
SysTick_CLKSource_HCLK_Div8 | SysTick時鐘源為AHB時鐘的1/8 |
SysTick_CLKSource_HCLK | SysTick時鐘源為AHB時鐘 |
關鍵詞:
STM32SysTick定時
評論