关于systick的具体概念不多记录,systick是存储一个数值然后倒计数,每记到0会进行一次中断,下面我们用代码记录

其中SystemFrequency的值为72000000,可去查宏定义,除去100000代表的是每这么长时间周期就中断一次,这个设置就是每720个周期进一次中断,执行中断的函数,经常用于定时器延时,每1us中断一次!


在中断中,每1us进一次,TimingDelay会-1,在delay函数中,调用 函数并写入参数nTime,开启中断,当中断这么多次的时候跳出循环,完成延时函数,;例子比较详细,过程也比较简单。
几个无关知识点:
volatile:防止因为值得调用导致值发生改名,用该关键字声明会使读该值时每次都从新读,不改变值的大小
const”含义是“请做为常量使用”,而并非“放心吧,那肯定是个常量”。
static 静态局部变量
extern 调用其他文件模块声明使用
本文介绍了SysTick定时器的工作原理及应用。通过设置SystemFrequency值为72MHz,实现每720个周期中断一次的功能。SysTick定时器通常被用于实现精确的延时操作。文章还解释了如何在中断服务程序中递减TimingDelay值,从而实现精确的延时。
417

被折叠的 条评论
为什么被折叠?



