stm32上的滴答时钟是操作系统运行的基础
stm32的滴答时钟树如下图,SysTick可以选择HCLK(AHB时钟)或HCLK/8作为运行时钟
stm32的滴答定时器是24bit的定时器,对于其配置只有四个寄存器:
STK_CTRL为控制寄存器
STK_LOAD为自动重装载寄存器
STK_VAL当前计数值寄存器(从重装载值向下计数,当该值为0时产生中断)
STK_CALIB为校准寄存器,不常用
控制寄存器STK_CTRL只有4位被用到:
bit0:ENABLE SysTick的使能位,1使能SysTick定时器,0关闭SysTick定时器
bit1:TICKINT SysTick中断使能位,1 当STK_VAL计数为0时会触发SysTick中断,0 当STK_VAL为0时不触发中断
bit2:CLKSOURCE SysTick时钟选择位,1 SysTick的时钟为AHB时钟,0 SysTick时钟为AHB/8
bit16:计数为0的标志位,若STK_VAL计数为0,此标志会被置1
---------------------------------------------------------------------SysTick基础知识分割线-------------------------------------------------------------------------------------------
FreeRTOS的时钟配置代码如下
void delay_in