微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > STM32的SYSTICK_Init()配置

STM32的SYSTICK_Init()配置

时间:11-27 来源:互联网 点击:
voidSYSTICK_Init(void)

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

SysTick_SetReload(4500);
/* Enable SysTick interrupt

SysTick_ITConfig(ENABLE);
/* Enable the SysTick Counter

SysTick_CounterCmd(SysTick_Counter_Enable);
}

系统时钟定时器的周期与驱动的时钟频率和Reload值相关。

RCC通过AHB时钟(HCLK)8分频后作为Cortex系统定时器(SysTick)的外部时钟。

驱动系统时钟定时器的时钟源有两个:HCLK或(HCLK/8默认),通过调用SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK)或SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8)选择。

Reload值表示对时钟源脉冲计数多少次为一个系统时钟周期,如当选择时钟源为(HCLK/8)时,如果HCLK=72MHz,则Reload值为9000时系统时钟周期为1ms。通过调用SysTick_SetReload()设置Reload值。

再举个例子:选择时钟源为(HCLK/8),如果HCLK=36MHz,Reload值为9000时系统时钟周期为2ms,Reload值为4500时系统时钟周期为1ms,Reload值为90000时系统时钟周期为20ms。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top