diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_hwtimer.c b/bsp/stm32/libraries/HAL_Drivers/drv_hwtimer.c index 085674d3c5..24e91cd690 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_hwtimer.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_hwtimer.c @@ -235,11 +235,15 @@ static rt_err_t timer_start(rt_hwtimer_t *timer, rt_uint32_t t, rt_hwtimer_mode_ /* set timer to single mode */ tim->Instance->CR1 |= TIM_OPMODE_SINGLE; } - + else + { + tim->Instance->CR1 &= (~TIM_OPMODE_SINGLE); + } + /* start timer */ if (HAL_TIM_Base_Start_IT(tim) != HAL_OK) { - LOG_E("TIM2 start failed"); + LOG_E("TIM start failed"); result = -RT_ERROR; }