系统滴答定时器的应用

1 实验目的

(1) 理解滴答定时器SysTick 定时器的工作原理;

(2) 学会使用中断函数。

2 实验任务

(1) 编写 SysTick 定时器初始化程序;

(2) 编写 SysTick 定时器的中断服务函数。

3 实验说明

(1) SysTick 定时器,是一个简单的定时器,对于 CM3,CM4 内核芯片,都

有 SysTick 定时器。SysTick 定时器就是系统滴答定时器,一个 24 位的倒计数定

时器,计到 0 时,将从 RELOAD 寄存器中自动重新装载定时初值。只要不把它

在 SysTick 控制及状态寄存器中的使能位清除,就永不停息,即使在睡眠模式下

也能工作。SysTick 定时器常用来做延时,或者实时系统的心跳时钟。这样可以

节省 MCU 资源,不用浪费一个定时器。比如 UCOS 中,分时复用,需要一个最

小的时间戳,一般在 STM32+UCOS 系统中,都采用SysTick 做 UCOS 心跳时钟。

(2) SysTick_CLKSourceConfig()// SysTick 时钟源选择 misc.c 文件中

SysTick_Config(uint32_t ticks)//初始化 SysTick,时钟为 HCLK,并开启中断。

以上就是滴答定时器常用的库函数了,第一个函数为滴答器选择时钟源。时

钟源的选择有以下两种:内部时钟源 SysTick_CLKSource_HCLK 和以及外部时

钟源 SysTick_CLKSource_HCLK_Div8,后者为前者的八分之一。

假如SysTick_CLKSource_HCLK为72MHz,那么SysTick_CLKSource_HCLK

_Div8 为 9MHz。前面提到滴答定时器其实是一个 24 位递减的定时器。第二个函

数用来初始化滴答定时器,也就是为其设置初值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hhappy0123456789

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值