新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32學(xué)習(xí)筆記——使用SysTick定時(shí)器做延時(shí)

STM32學(xué)習(xí)筆記——使用SysTick定時(shí)器做延時(shí)

作者: 時(shí)間:2016-11-28 來(lái)源:網(wǎng)絡(luò) 收藏

lSystick當(dāng)前值寄存器(SysTick_VAL)

lSysTick校準(zhǔn)值寄存器(SysTick_CALIB)

各寄存器示意圖:

2.SysTick函數(shù)

3.0版以后的STM32固件庫(kù)在標(biāo)準(zhǔn)外設(shè)庫(kù)中移除了SysTick的驅(qū)動(dòng),因此用戶必須調(diào)用CMSIS定義的函數(shù)。

CMSIS只提供了一個(gè)SysTick設(shè)置的函數(shù),替代了STM32原有SysTick驅(qū)動(dòng)的全部函數(shù)。

[cpp]view plaincopy
  1. SysTick_Config(uint32_tticks);

該函數(shù)設(shè)置了自動(dòng)重載入計(jì)數(shù)器(LOAD)的值,SysTick IRQ的優(yōu)先級(jí),復(fù)位了計(jì)數(shù)器(VAL)的值,開(kāi)始計(jì)數(shù)并打開(kāi)SysTick IRQ中斷。SysTick時(shí)鐘默認(rèn)使用系統(tǒng)時(shí)鐘。

此外,還可以使用SysTick_CLKSourceConfig函數(shù)來(lái)改變時(shí)鐘源,使用NVIC_SetPriority設(shè)置中斷優(yōu)先級(jí)(往后再深入)。

SysTick_CLKSourceConfig函數(shù)

函數(shù)名

SysTick_CLKSourceConfig

函數(shù)原型

SysTick_CLKSourceConfig(u32 SysTick_CLKSource)

行為描述

配置SysTick的時(shí)鐘源

輸入?yún)?shù)

SysTick_CLKSource:SysTick的時(shí)鐘源

輸出參數(shù)

無(wú)

返回值

無(wú)

前提條件

無(wú)

調(diào)用函數(shù)

無(wú)

SysTick_CLKSource允許值

SysTick_CLKSource

描述

SysTick_CLKSource_HCLK_Div8

SysTick時(shí)鐘源為AHB時(shí)鐘的1/8

SysTick_CLKSource_HCLK

SysTick時(shí)鐘源為AHB時(shí)鐘



關(guān)鍵詞: STM32SysTick定時(shí)

評(píng)論


技術(shù)專區(qū)

關(guān)閉