Merge pull request #3260 from HubertXie/master

[bsp][stm32] fix the hardware timer issue
This commit is contained in:
Bernard Xiong 2019-12-13 07:17:27 +08:00 committed by GitHub
commit 4b27738264
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 0 deletions

View File

@ -228,6 +228,8 @@ static rt_err_t timer_start(rt_hwtimer_t *timer, rt_uint32_t t, rt_hwtimer_mode_
tim = (TIM_HandleTypeDef *)timer->parent.user_data; tim = (TIM_HandleTypeDef *)timer->parent.user_data;
/* set tim cnt */ /* set tim cnt */
__HAL_TIM_SET_COUNTER(tim, 0);
/* set tim arr */
__HAL_TIM_SET_AUTORELOAD(tim, t - 1); __HAL_TIM_SET_AUTORELOAD(tim, t - 1);
if (opmode == HWTIMER_MODE_ONESHOT) if (opmode == HWTIMER_MODE_ONESHOT)
@ -260,6 +262,9 @@ static void timer_stop(rt_hwtimer_t *timer)
/* stop timer */ /* stop timer */
HAL_TIM_Base_Stop_IT(tim); HAL_TIM_Base_Stop_IT(tim);
/* set tim cnt */
__HAL_TIM_SET_COUNTER(tim, 0);
} }
static rt_err_t timer_ctrl(rt_hwtimer_t *timer, rt_uint32_t cmd, void *arg) static rt_err_t timer_ctrl(rt_hwtimer_t *timer, rt_uint32_t cmd, void *arg)