当前位置:首页>文章>systick定时器工作原理(systick最长定时时间)

systick定时器工作原理(systick最长定时时间)

1:属于Cortex内核的外设,内嵌在NVIC中 2:24位向下递减的计数器 3:重装载数据寄存器见到0时系统定时器就会产生一次中断 4:仅仅只有4个寄存器来控制 来源于Cortex-M3权威指南 针对于上面所述的时钟来源,参考时钟数如下图 时钟树 由上可以看出,时钟源AHB/8或AHB 如下是利用系统定时器产生1us的设置 voiddelay_us(u32uS){//uS微秒级延时程序(参考值即...

1:属于Cortex内核的外设,内嵌在NVIC中

2:24位向下递减的计数器

3:重装载数据寄存器见到0时系统定时器就会产生一次中断

4:仅仅只有4个寄存器来控制systick定时器工作原理(systick最长定时时间)

来源于Cortex-M3权威指南

针对于上面所述的时钟来源,参考时钟数如下图systick定时器工作原理(systick最长定时时间)

时钟树

由上可以看出,时钟源AHB/8或AHB

systick定时器工作原理(systick最长定时时间)systick定时器工作原理(systick最长定时时间)systick定时器工作原理(systick最长定时时间)

如下是利用系统定时器产生1us的设置

void delay_us(u32 uS){ //uS微秒级延时程序(参考值即是延时数,72MHz时最大值233015)	
	SysTick->LOAD=AHB_INPUT*uS;      //重装计数初值(当主频是72MHz,72次为1微秒)
	SysTick->VAL=0x00;        //清空定时器的计数器
	SysTick->CTRL=0x00000005;//时钟源HCLK,打开定时器
	while(!(SysTick->CTRL&0x00010000)); //等待计数到0,第16为倒数为0则会置位
	SysTick->CTRL=0x00000004;//关闭定时器
}

注意其时钟源是HCLK,但实际上是FCLK,因为其与AHB时钟HCLK是相互连通的

给TA打赏
共{{data.count}}人
人已打赏
文章

qt时间戳转换(qt时间戳转换日期格式)

2022-5-6 9:31:12

文章

ipad淘宝怎么全屏显示(ipad淘宝页面变窄了调整方法)

2022-5-6 9:31:14

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索