#粤嵌星计划#
day27-stm32之系统嘀嗒定时器SysTick
嘀嗒定时器,作为stm32特有的系统定时器,它的出现,只在为用户在使用OS以及延时的时候提供一个精确的定时。
SysTick 是 MDK 定义了的一个结构体(在 core_m4.h 里面),里面包含 CTRL、LOAD、VAL、CALIB 等 4 个寄存器;
CTRL寄存器:顾名思义就是SYSTick的控制寄存器。它的几个常用位如下图,其中CLKSOURCE位为1的时候,嘀嗒计时器将选择系统时钟8分频后的时钟(即168/8=21),我们一般采用这个。
根据以上,我们可以编写一小段程序作为延时程序:
//nus应小于2^24/21=798915
void _Delay_us(u32 nus)
{
SysTick->CTRL&=~(1<<2);//选择时钟源为21MHz
SysTick->CTRL&=~(1<<1);//SYsTick数到0时无动作
SysTick->LOAD=21*nus;//装载的值,此值每减1,需要1/21us,故用21*nus
SysTick->CTRL|=(1<<0);//使能SySTick
while(!(SysTick->CTRL&(1<<16)));//等待倒计数数到0
}
void _Delay_ms(u32 nms)
{
SysTick->CTRL&=~(1<<2);//选择时钟源为21MHz
SysTick->CTRL&=~(1<<1);//SYsTick数到0时无动作
SysTick->LOAD=21000*nms;//装载的值,此值每减1,需要1/21us,故用21*nus
SysTick->CTRL|=(1<<0);//使能SySTick
while(!(SysTick->CTRL&(1<<16)));//等待倒计数数到0
}
Systick 的时钟来自系统时钟 8 分频, 正因为如此,系统时钟如果不是 8 的倍数(不能被 8 整除),则会导致延时函数不准确,所以STM32的外部晶振一般采用8MHz的。 https://t.cn/EhGn2gw
day27-stm32之系统嘀嗒定时器SysTick
嘀嗒定时器,作为stm32特有的系统定时器,它的出现,只在为用户在使用OS以及延时的时候提供一个精确的定时。
SysTick 是 MDK 定义了的一个结构体(在 core_m4.h 里面),里面包含 CTRL、LOAD、VAL、CALIB 等 4 个寄存器;
CTRL寄存器:顾名思义就是SYSTick的控制寄存器。它的几个常用位如下图,其中CLKSOURCE位为1的时候,嘀嗒计时器将选择系统时钟8分频后的时钟(即168/8=21),我们一般采用这个。
根据以上,我们可以编写一小段程序作为延时程序:
//nus应小于2^24/21=798915
void _Delay_us(u32 nus)
{
SysTick->CTRL&=~(1<<2);//选择时钟源为21MHz
SysTick->CTRL&=~(1<<1);//SYsTick数到0时无动作
SysTick->LOAD=21*nus;//装载的值,此值每减1,需要1/21us,故用21*nus
SysTick->CTRL|=(1<<0);//使能SySTick
while(!(SysTick->CTRL&(1<<16)));//等待倒计数数到0
}
void _Delay_ms(u32 nms)
{
SysTick->CTRL&=~(1<<2);//选择时钟源为21MHz
SysTick->CTRL&=~(1<<1);//SYsTick数到0时无动作
SysTick->LOAD=21000*nms;//装载的值,此值每减1,需要1/21us,故用21*nus
SysTick->CTRL|=(1<<0);//使能SySTick
while(!(SysTick->CTRL&(1<<16)));//等待倒计数数到0
}
Systick 的时钟来自系统时钟 8 分频, 正因为如此,系统时钟如果不是 8 的倍数(不能被 8 整除),则会导致延时函数不准确,所以STM32的外部晶振一般采用8MHz的。 https://t.cn/EhGn2gw
1.此套模板是一套完整框架个人简历模板,以求职平面设计师为蓝本进行设计创作,整体设计清新简约,粉蓝神仙配色更清新,更自然; 迎合即将到来的招聘热,为需要找工作的亲们提供一个参考,希望大家找到好的工作,早日富可敌国。
2.【字体推荐】:中文:微软雅黑和微软雅黑light;英文:Arail 和Calibri Light;
#求职##神仙配色##小清新##通用简历##PPT简历#
https://t.cn/ExH6arz
2.【字体推荐】:中文:微软雅黑和微软雅黑light;英文:Arail 和Calibri Light;
#求职##神仙配色##小清新##通用简历##PPT简历#
https://t.cn/ExH6arz
1.此套模板是一套完整框架个人简历模板,以求职平面设计师为蓝本进行设计创作,整体设计清新简约,粉蓝神仙配色更清新,更自然; 迎合即将到来的招聘热,为需要找工作的亲们提供一个参考,希望大家找到好的工作,早日富可敌国。
2.【字体推荐】:中文:微软雅黑和微软雅黑light;英文:Arail 和Calibri Light;https://t.cn/EI3HMHI
2.【字体推荐】:中文:微软雅黑和微软雅黑light;英文:Arail 和Calibri Light;https://t.cn/EI3HMHI
✋热门推荐