HAL库系统定时器(精度高,适合裸体程序)
Systick定时器(滴答定时器) HAL_Delay(100); 毫秒级定时函数 延时时间:1ms - 49.7天
CPU运算延时(精度低,简单易用)
空循环延时
__NOP();
延时一个时钟周期 时钟周期:执行一个基本操作所需要的时间 机器周期:执行一个指令所需要的时间- `while(a–);
/* @Func: 微秒延时 @input:us 延时时间 */ void delay_us(uint32_t us){ uint32_t delay = (HAL_RCC_getHCLKFreq()/80000000*us); while(delay--); }