PWM配置:PWM1、PWM3周期相同,计数模式都为UP-DOWM,都为50%Duty死区互补模式输出,PWM3相对于PWM1进行移相,同步后计数方向为UP。
问题:当PWM3移相值由0变化为1或2等非0值时,PWM3输出波形的第一个周期异常,异常如下图:
当PWM3移相值由12等非0值变化为其他值时,PWM3输出波形正常
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
PWM配置:PWM1、PWM3周期相同,计数模式都为UP-DOWM,都为50%Duty死区互补模式输出,PWM3相对于PWM1进行移相,同步后计数方向为UP。
问题:当PWM3移相值由0变化为1或2等非0值时,PWM3输出波形的第一个周期异常,异常如下图:
当PWM3移相值由12等非0值变化为其他值时,PWM3输出波形正常
Hi Aiden zhang,
我同相关工程师讨论一下回复您
好的,补充一点。当我把同步后计数方向修改为DOWN后。执行同样的操作,PWM3输出波形就正常了。
Hi Aiden zhang,
有一点值得注意,AQCTLA[ZRO]=0x2,即在CTR=0时置高电平。同时同步信号也是在CTR=0时发送。
当TBPHS由 0变为 非0时, 同步的ePWM模块的第一个周期将不会出现CTR=0 ,所以在CTR=0时的置高电平的动作 会被漏掉;
而TBPHS由非0变为另一个非0时,因为之前的非0移相值使得CTR=0事件在本次移相值装载之前已经出现,所以在CTR=0时的置高电平的动作不会被漏掉。
(如图所示大概在箭头处会丢动作)
同理您修改计数方向为down后,鉴于您装载的移相值并不是很大,装载之后计数值很快也能变为0,触发CTR=0的置高电平动作。
实时改变移相值时要小心错过动作事件。
我们的工程师给出了详细的解释,您可以参考一下:
--
如果有什么不明白的地方,欢迎随时提问