系统滴答定时器 72M 1微秒延时

2019-10-11 15:57发布

void delay_us(u32 nus)

{

         u32 temp;

         SysTick->LOAD = 72*nus;

         SysTick->VAL=0X00;

         SysTick->CTRL=0X05;

         do

         {

                  temp=SysTick->CTRL;

         }
         while((temp&0x01)&&(!(temp&(1<<16))));

         SysTick->CTRL=0x00;

         SysTick->VAL =0X00;  

}
这个程序设置的有问题吗?
能产生 1us的延时吗

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。