void delay_us(uint32_t nus) { __HAL_TIM_SetCounter(&htim6,0); __HAL_TIM_ENABLE(&htim6); while(__HAL_TIM_GetCounter(&htim6) <= nus*16); //定时器基准时钟16MHZ __HAL_TIM_DISABLE(&htim6); }
用普通定时器实现US级别延时,程序跑起来时候为什么会死在while(__HAL_TIM_GetCounter(&htim6) <= nus*16); 出不来?
|