diff options
| author | BreederBai <[email protected]> | 2022-07-04 10:26:33 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-07-04 10:26:33 +0800 |
| commit | 78faea4b8dd3456131405fd72059476dc426ca2e (patch) | |
| tree | 2a510715d3567dc363eadbd3852e0cb8a209056a | |
| parent | b39210dea3e8a2b07135904ee337ec8831b15dae (diff) | |
[bsp/stm32]优化功能(drv_pwm):设置PWM频率和脉宽时不破坏上一个PWM周期 (#6129)
* [bsp/stm32]优化功能(drv_pwm):设置PWM频率和脉宽时不破坏上一个PWM周期
| -rw-r--r-- | bsp/stm32/libraries/HAL_Drivers/drv_pwm.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_pwm.c b/bsp/stm32/libraries/HAL_Drivers/drv_pwm.c index 81af346b1e..b655b7c442 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_pwm.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_pwm.c @@ -330,10 +330,12 @@ static rt_err_t drv_pwm_set(TIM_HandleTypeDef *htim, struct rt_pwm_configuration pulse = period; } __HAL_TIM_SET_COMPARE(htim, channel, pulse - 1); - __HAL_TIM_SET_COUNTER(htim, 0); - /* Update frequency value */ - HAL_TIM_GenerateEvent(htim, TIM_EVENTSOURCE_UPDATE); + /* If you want the PWM setting to take effect immediately, + please uncommon the following code, but it will cause the last PWM cycle not complete. */ + //__HAL_TIM_SET_COUNTER(htim, 0); + + //HAL_TIM_GenerateEvent(htim, TIM_EVENTSOURCE_UPDATE); /* Update frequency value */ return RT_EOK; } |
