滴答定时器笔记
- 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时,将被重装载的值
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2043066.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!