- SysTick介绍
1.1 什么是SysTick?
Systick,即滴答定时器,是内核中的一个特殊定时器,用于提供系统级的定时服务。该定时器是一个24位的
递减计数器,具有自动重载值寄存器的功能。当计数器到达自动重载值时,它会自动重新加载并开始新的计
数周期。
Systick定时器的主要功能包括实现简单的延时、生成定时中断以及进行精确定时和周期定时操作。此外,
Systick定时器还可以被用于其他目的,例如作为操作系统的时基(如FreeRTOS),或者用于软件看门狗等
系统调度操作。在STM32中,Systick通常以HCLK(AHB时钟)或HCLK/8作为运行时钟。
1.2 SysTick工作原理
在使用Systick定时器进行延时操作时,可以设定初值并使能后,每经过一个系统时钟周期,计数值就减1。
当计数到0时,Systick计数器自动重装初值并继续计数,同时内部的COUNTFLAG标志会置位,触发中断
(如果中断使能)。这样,可以在中断处理函数中实现特定的延时逻辑。
countflag 如果上次读取寄存器后 systick已经数到0了 那就会被置一,如果读取该位,该位会自动清零
CLKSOURCE 如果填0 那就是外部时钟源 8分频
CLKSOURCE 如果填1 那就是内部时钟源 1分频
TICKINT 1=SysTICK 倒数到0时 systick会产生异常请求 0 = 数到零时无动作
ENABLE SYSTICK 定时器使能位
RELOAD 复位值0 当倒数置0时,将被重装载的值
滴答定时器笔记
最新推荐文章于 2024-08-14 20:03:33 发布