未验证 提交 78faea4b 编写于 作者: BreederBai's avatar BreederBai 提交者: GitHub

[bsp/stm32]优化功能(drv_pwm):设置PWM频率和脉宽时不破坏上一个PWM周期 (#6129)

* [bsp/stm32]优化功能(drv_pwm):设置PWM频率和脉宽时不破坏上一个PWM周期
上级 b39210de
...@@ -330,10 +330,12 @@ static rt_err_t drv_pwm_set(TIM_HandleTypeDef *htim, struct rt_pwm_configuration ...@@ -330,10 +330,12 @@ static rt_err_t drv_pwm_set(TIM_HandleTypeDef *htim, struct rt_pwm_configuration
pulse = period; pulse = period;
} }
__HAL_TIM_SET_COMPARE(htim, channel, pulse - 1); __HAL_TIM_SET_COMPARE(htim, channel, pulse - 1);
__HAL_TIM_SET_COUNTER(htim, 0);
/* Update frequency value */ /* If you want the PWM setting to take effect immediately,
HAL_TIM_GenerateEvent(htim, TIM_EVENTSOURCE_UPDATE); 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; return RT_EOK;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册