SysTick是Cortex-M内核自带的一个24位定时器,所以我们可以在core_cm3.h或core_cm4.h头文件中看到它的寄存器定义和配置函数SysTick_Config()。SysTick的功能非常简单,仅仅提供一个时基功能,支持中断请求,因此它的寄存器寥寥无几。
以下是手册上对SysTick寄存器的介绍:
CTRL为控制寄存器:
ENABLE:使能位
TICKINT: 中断的开关,当计数溢出且TICKINT=1时SysTick将发出中断申请。
CLKSOURCE:时钟选择位,CLKSOURCE=1时选择系统时钟,如果是M3则为72MHz,M4则为168MHz。否侧选择外部时钟作为时钟源。
COUNTFLAG: 溢出标志位,计数到0时置1,而且硬件自动清零。
LOAD为重载值寄存器:
当计数到0时SysTick自动将此寄存器的值加载到VAL寄存器中。注意它是24位的,所以最大值为0XFFF

最低0.47元/天 解锁文章
2220

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



