一、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;
}