滴答定时器

一:配置CTRL寄存器,控制及其状态寄存器,
二: 配置LOAD寄存器,下一次的重装值
三: 配置VAL寄存器,当前数值寄存器
8 /* SystemFrequency / 1000 1ms 中断一次
9 * SystemFrequency / 100000 10us 中断一次
10 * SystemFrequency / 1000000 1us 中断一次
12 SysTick_Config(SystemCoreClock / 1000)
仅需要调用SysTick_Config()即可。
滴答定时器的作用就起到了准确定时的作用,用在延时函数中,更加精准些。
eg:
*功能说明:SysTick中断调用函数
*******************************************************************************************/
void TimingDelay_Decrement(void)
{
    if (TimingDelay != 0x00)
    {
        TimingDelay--;
    }
}
SystemFrequency / 1000 1ms 中断一次,中断函数1ms中断一次。

*功能说明:供外部调用的延时函数
*******************************************************************************************/
void Delay(__IO uint32_t nTime)
{
    TimingDelay = nTime;
    while(TimingDelay != 0);
}
此处的延时函数1ms改变一次



你可能感兴趣的:(滴答定时器)