芯片信号F280049,发波方式与F28377也比较像,现在采用PWM上下互补方式发波,PWMA输出经过上升沿和下降沿死区后输出ePWMxA和ePWMxB,预留一定死区,配置为HRPWM后,ePWMxA输出可以实现HRPWM,但是ePWMxB没有实现,再配置HRCNFG寄存器中的SWAPAB位和SELOUTB位均无法实现ePWMxA和ePWMxB后高精度完全互补,要么只有一路高精度,要么高精度互补后没有死区,请问应当如何解决?
Green Deng:请问你的DBCTL.bit.HALFCYCLE位设置的是什么?
芯片信号F280049,发波方式与F28377也比较像,现在采用PWM上下互补方式发波,PWMA输出经过上升沿和下降沿死区后输出ePWMxA和ePWMxB,预留一定死区,配置为HRPWM后,ePWMxA输出可以实现HRPWM,但是ePWMxB没有实现,再配置HRCNFG寄存器中的SWAPAB位和SELOUTB位均无法实现ePWMxA和ePWMxB后高精度完全互补,要么只有一路高精度,要么高精度互补后没有死区,请问应当如何解决?
user3788754:
回复 Green Deng:
这一位,我设置为0
芯片信号F280049,发波方式与F28377也比较像,现在采用PWM上下互补方式发波,PWMA输出经过上升沿和下降沿死区后输出ePWMxA和ePWMxB,预留一定死区,配置为HRPWM后,ePWMxA输出可以实现HRPWM,但是ePWMxB没有实现,再配置HRCNFG寄存器中的SWAPAB位和SELOUTB位均无法实现ePWMxA和ePWMxB后高精度完全互补,要么只有一路高精度,要么高精度互补后没有死区,请问应当如何解决?
Green Deng:
回复 user3788754:
带死区和互补HRPWM应该跟SWAPAB位和SELOUTB位没有关系,这两者是用于交换HRPWM输出和选择输出口A/B的。
根据芯片技术手册1906页的NOTE中描述:
HRPWM capabilities on Deadband Rising Edge Delay and Falling Edge Delay is applicable
only during Dead Band half cycle clocking Operation. The number of MEP steps is half in
size [ bits 15:9 ]than duty and phase high resolution registers for the same reason
目前没有针对F280049带死区HRPWM输出的例程,不过你可以参考F28075的例程:
C:\ti\c2000\C2000Ware_2_00_00_03\device_support\f2807x\examples\cpu1\hrpwm_deadband_sfo_v8
芯片信号F280049,发波方式与F28377也比较像,现在采用PWM上下互补方式发波,PWMA输出经过上升沿和下降沿死区后输出ePWMxA和ePWMxB,预留一定死区,配置为HRPWM后,ePWMxA输出可以实现HRPWM,但是ePWMxB没有实现,再配置HRCNFG寄存器中的SWAPAB位和SELOUTB位均无法实现ePWMxA和ePWMxB后高精度完全互补,要么只有一路高精度,要么高精度互补后没有死区,请问应当如何解决?
user3788754:
回复 Green Deng:
我查看了这个例程,我的理解是:这个例程配置的是实现高分辨率的DB死区,是在原有的DB死区上再叠加一定的高分辨率延时。我的状态是不需要高分辨死区功能,我只是想实现互补的ePWMxA和ePWMxB,在我实现高分辨率的ePWMxA后,ePWMxB能与其互补。
例如:周期1000ns,ePWMxA正常输出400ns,死区100ns,ePWMxB输出500ns。现在在ePWMxA上叠加2ns后输出402ns,我希望ePWMxB能够输出498ns。
芯片信号F280049,发波方式与F28377也比较像,现在采用PWM上下互补方式发波,PWMA输出经过上升沿和下降沿死区后输出ePWMxA和ePWMxB,预留一定死区,配置为HRPWM后,ePWMxA输出可以实现HRPWM,但是ePWMxB没有实现,再配置HRCNFG寄存器中的SWAPAB位和SELOUTB位均无法实现ePWMxA和ePWMxB后高精度完全互补,要么只有一路高精度,要么高精度互补后没有死区,请问应当如何解决?
user3788754:
回复 Green Deng:
请问,F28377能否实现上述我所需求的功能?