在HAL库如何使用SysTick精准延时,滴答定时器

知道systick在系统中的地位后,我们来了解systick的实现。这里只是举例说明systick的使用。它有四个寄存器,笔者把它列出来:

  •     SysTick->CTRL,        --控制和状态寄存器
  •     SysTick->LOAD,        --重装载寄存器
  •     SysTick->VAL,          --当前值寄存器
  •    SysTick->CALIB,        --校准值寄存器    
void Delay_us(unsigned int nTime)
{
         SysTick->LOAD = 72*nTime;
         SysTick->CTRL =SysTick_CTRL_ENABLE_Msk | SysTick_CTRL_CLKSOURCE_Msk;
         while(!(SysTick->CTRL&SysTick_CTRL_COUNTFLAG_Msk));
         SysTick->CTRL =~SysTick_CTRL_ENABLE_Msk;
}
链接:https://pan.baidu.com/s/1NAVhBSyy47t_82qnShwY0w 
提取码:pdtg 

猜你喜欢

转载自blog.csdn.net/weixin_41865104/article/details/89743493