一,滴答定时器SysTick
SysTick,即滴答定时器,是内核中一个特殊的定时器,用于提供系统级的定时服务。是一个24位递减计时器,具有自动重载值寄存器的功能 。当计数器到达自动重载值时,它会自动重新加载新的计数周期。
SysTick定时器的主要功能包括简单的延迟,生成定时中断以及进行精确定时和周期定时操作。此外SysTick定时器还可以被用于其他,比如操作系统的时基(如FreeRTOS),或者用于软件看门狗等系统调度操作。在STM32中,SysTick通常以HCLK(AHB时钟)或HCLK/8作为运行时钟。
二,工作原理
在使用SysTick定时器进行延迟操作的时候,可以设定初值并使能后,每经过一个系统时钟周期,计数值就减1。当计数到0时,SysTick计数器自动重装初值并继续计数,同时内部的COUNTFLAG标志会置位,触发中断(如果中断使能)。这样,可以在中断处理函数中实现特定的延迟逻辑
三,SysTick寄存器介绍
SysTick控制及状态寄存器(CTRL)