硬件:STM32F103C8T6,TIM4_CH4 PWM输出,阻塞方式工作!
配置PWM ONE PULSE 功能,脉宽设定为5 mS,高电平输出,采用HAL_TIM_PWM_Start()在主程序启动:
结果能产生5mS脉冲,但在ARR时间后,输出持续为高,如果采用HAL_TIM_PWM_Stop()提前终止,则脉冲不能输出,
如果在ARR时间后HAL_TIM_PWM_Stop(),则总会输出一个高电平,然后才Stop,也就是会输出2个脉冲,
这与:PWM One Pulse Mode 功能矛盾!!!???
有人用过这个功能吗?
不得已,只好采用HAL_TIM_PWM_Start_IT()然后在HAL_TIM_PeriodElapsedCallback()中再Stop,
才能实现PWM One Pulse输出。 |