diff options
| author | bzrobotics <[email protected]> | 2022-10-05 13:07:26 +0800 |
|---|---|---|
| committer | Man, Jianting (Meco) <[email protected]> | 2022-10-08 22:32:45 -0400 |
| commit | 560a21207e1000191ba359b4c2d014f50cb0c852 (patch) | |
| tree | d34f7e624a97b4f3b8903c132a23720f9480f126 /bsp | |
| parent | c17d5d509fc01aa208554ce29a2d544281005c70 (diff) | |
FIX: [bsp][stm32] pulse_encoder driver did not handle TIM overflow
Diffstat (limited to 'bsp')
| -rw-r--r-- | bsp/stm32/libraries/HAL_Drivers/drv_pulse_encoder.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_pulse_encoder.c b/bsp/stm32/libraries/HAL_Drivers/drv_pulse_encoder.c index 4c076d7b77..a23b342eab 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_pulse_encoder.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_pulse_encoder.c @@ -157,10 +157,12 @@ rt_err_t pulse_encoder_control(struct rt_pulse_encoder_device *pulse_encoder, rt switch (cmd) { case PULSE_ENCODER_CMD_ENABLE: + __HAL_TIM_ENABLE_IT(&stm32_device->tim_handler, TIM_IT_UPDATE); HAL_TIM_Encoder_Start(&stm32_device->tim_handler, TIM_CHANNEL_ALL); HAL_TIM_Encoder_Start_IT(&stm32_device->tim_handler, TIM_CHANNEL_ALL); break; case PULSE_ENCODER_CMD_DISABLE: + __HAL_TIM_DISABLE_IT(&stm32_device->tim_handler, TIM_IT_UPDATE); HAL_TIM_Encoder_Stop(&stm32_device->tim_handler, TIM_CHANNEL_ALL); HAL_TIM_Encoder_Stop_IT(&stm32_device->tim_handler, TIM_CHANNEL_ALL); break; |
