STM32 初级笔记—SysTick(系统定时器)

一、SysTick(系统定时器)的简单延迟

/*
*在SystemCoreClock = 72M的前提下
*SystemCoreClock/1000000 = 72时,函数延迟微妙
*SystemCoreClock/1000 = 72000时,函数延迟毫秒
/*
void SysTick_Delay_Us( __IO uint32_t us) 
{ 
    uint32_t i; 
    SysTick_Config(SystemCoreClock/1000000); 
 
    for (i=0; i<us; i++) { 
        // 当计数器的值减小到 0 的时候,CRTL 寄存器的位 16 会置 1 
        while ( !((SysTick->CTRL)&(1<<16)) ); 
    } 
    // 关闭 SysTick 定时器 
    SysTick->CTRL &=~SysTick_CTRL_ENABLE_Msk; 
} 

猜你喜欢

转载自blog.csdn.net/qqMr767621566/article/details/86487341