×
单片机 > 单片机程序设计 > 详情

STM32的SYSTICK_Init()配置

发布时间:2020-06-04 发布时间:
|
void  SYSTICK_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。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
stm32 总线矩阵介绍