systick系统定时器(systick系统定时器使用注意事项)

萍乡花鸟鱼虫市场2024-09-06 18:16:01578阅读7评论
Systick系统定时器是Cortex-M3内核中的一个外设,也被嵌入在NVIC(嵌套向量中断控制器)中,它是一个24位的向下递减的计数器,每计数一次所需的时间为1/SYSTICK,即系统滴答定时器时钟,它可以直接取自系统时钟,还可以通过系统时钟8分频后获取,当定时器计数到0时,将从LOAD寄存器中自动重装定时器初值,重新向下递减计数,如此循环往复,如果开启SysTick中断的话,当定时器计数到0,将产生一个中断信号,Systick系统定时器的本质是一个内嵌在NVIC中的定时器,它是一个24位的向下递减的计数器,每计数一次所需时间为1/SYST

systick系统定时器(systick系统定时器使用注意事项) 喷点菠萝鱼 第1张

Systick系统定时器

Systick系统定时器是Cortex-M3内核中的一个外设,也被嵌入在NVIC(嵌套向量中断控制器)中。它是一个24位的向下递减的计数器,每计数一次所需的时间为1/SYSTICK,即系统滴答定时器时钟,它可以直接取自系统时钟,还可以通过系统时钟8分频后获取。当定时器计数到0时,将从LOAD寄存器中自动重装定时器初值,重新向下递减计数,如此循环往复。如果开启SysTick中断的话,当定时器计数到0,将产生一个中断信号。

工作原理

Systick系统定时器的本质是一个内嵌在NVIC中的定时器,它是一个24位的向下递减的计数器,每计数一次所需时间为1/SYSTICK。当定时器计数到0时,将从LOAD寄存器中自动重装定时器初值,重新向下递减计数。如果开启SysTick中断的话,当定时器计数到0,将产生一个中断信号。

应用场景

Systick系统定时器常用来做延时任务,在实时系统中,则常用来做系统时钟。此外,它还被应用于操作系统的节拍时钟,用于产生时基,维持操作系统的心跳。

如何配置Systick

配置Systick系统定时器主要是通过配置其寄存器来实现。具体来说,需要配置的是LOAD寄存器,即设置定时器的重装载值。这个值决定了定时器计数到0后何时再次产生中断。另外,还需要配置的是CTRL寄存器,即设置定时器的时钟源和是否使能定时器。

注意事项

在使用Systick时,需要注意的是,一旦启用了SysTick,就需要处理好由此产生的中断,否则可能会对系统的正常运行造成影响。此外,还需要注意的是,全局变量TimingDelay必须使用volatile,否则可能会被编译器优化。


systick系统定时器(systick系统定时器使用注意事项) 喷点菠萝鱼 第2张
systick系统定时器(systick系统定时器使用注意事项) 喷点菠萝鱼 第3张
systick系统定时器(systick系统定时器使用注意事项) 喷点菠萝鱼 第4张
文章版权声明:本站文章来之全网,如有雷同请联系站长微信xlyc002 ,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复:表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (有 7 条评论,578人围观)

目录[+]

取消
微信二维码
微信二维码
支付宝二维码