新聞中心

STM32的SYSTICK_Init()配置

作者: 時(shí)間:2016-11-27 來源:網(wǎng)絡(luò) 收藏
voidSYSTICK_Init(void)

{
/* SysTick end of count event each 1ms with input clock equal to 4.5MHz (HCLK/8, default)

本文引用地址:http://butianyuan.cn/article/201611/322137.htm

SysTick_SetReload(4500);
/* Enable SysTick interrupt

SysTick_ITConfig(ENABLE);
/* Enable the SysTick Counter

SysTick_CounterCmd(SysTick_Counter_Enable);
}

系統(tǒng)時(shí)鐘定時(shí)器的周期與驅(qū)動(dòng)的時(shí)鐘頻率和Reload值相關(guān)。

RCC通過AHB時(shí)鐘(HCLK)8分頻后作為Cortex系統(tǒng)定時(shí)器(SysTick)的外部時(shí)鐘。

驅(qū)動(dòng)系統(tǒng)時(shí)鐘定時(shí)器的時(shí)鐘源有兩個(gè):HCLK或(HCLK/8默認(rèn)),通過調(diào)用SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK)或SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8)選擇。

Reload值表示對時(shí)鐘源脈沖計(jì)數(shù)多少次為一個(gè)系統(tǒng)時(shí)鐘周期,如當(dāng)選擇時(shí)鐘源為(HCLK/8)時(shí),如果HCLK=72MHz,則Reload值為9000時(shí)系統(tǒng)時(shí)鐘周期為1ms。通過調(diào)用SysTick_SetReload()設(shè)置Reload值。

再舉個(gè)例子:選擇時(shí)鐘源為(HCLK/8),如果HCLK=36MHz,Reload值為9000時(shí)系統(tǒng)時(shí)鐘周期為2ms,Reload值為4500時(shí)系統(tǒng)時(shí)鐘周期為1ms,Reload值為90000時(shí)系統(tǒng)時(shí)鐘周期為20ms。



關(guān)鍵詞: STM32SYSTICK_Ini

評論


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

關(guān)閉