STM32CubeMx 定时器实现 微妙级延迟函数
单片机型号 STM32F3
STM32Cubmx 配置
先看一下时钟配置
定时器时钟是72MHz
使用定时器4来做延迟计数
void Delay_us(uint32_t us)
{
uint32_t counter = 0;
__HAL_TIM_SET_COUNTER(&htim4, 0);
HAL_TIM_Base_Start(&htim4);
while(counter < us)
{
counter = __HAL_TIM_GET_COUNTER(&htim4);
}
HAL_TIM_Base_Stop(&htim4);
}
Talk is cheap, show me the code