TI中文支持网
TI专业的中文技术问题搜集分享网站

利用28069输出频率变化的PWM做LLC控制时,怎样保证PRD和CMP寄存器值同时更新

HI:

我在使用28069的PWM1A、PWM1B、PWM2A、PWM2B控制LLC的原边全桥。

1)PWM开关频率范围为60kHz~250kHz

2)LLC控制环路计算频率为10kHz,也就是说我会在10kHz的中断里更新PWM1和PWM2的开关频率和CMPA值,

      使PWM输出开关频率变化且占空比为50%的波形。

3)PWM的PRD和CMP寄存器生效模式都设定为SHADOW模式。shadow到active选择为ZREO点。

问题:怎样保证写入PWM1.PRD、PWM1.CMPA、PWM2.PRD、PWM2.CMPA寄存器的值在同一时刻生效。

举个出问题的例子:在10kHz中断程序执行过程中:

                                代码指令1:写PWM1.PRD寄存器值为最新值

                                代码指令2:写PWM1.CMPA寄存器值为最新值

                                关闭键点:PWM的ZERO点到来,PWM1的PRD和CMPA寄存器值由SHADOW更新到ACTIVE

                                代码指令3:写PWM2.PRD寄存器值为最新值(需要等下一个ZERO点才能由SHADOW更新到ACTIVE)

                                代码指令4:写PWM4.CMPA寄存器值为最新值(需要等下一个ZERO点才能由SHADOW更新到ACTIVE)

这应该是造成变频控制项目中,PWM输出时正常时不正常的原因,开关频率越高越容易出现。

Green Deng:

你好,看一下这个帖子是否有帮助:e2e.ti.com/…/732889

Aiden:

回复 Green Deng:

这个贴子讲述了和我相同的问题,但是没有提供解决的方法。

赞(0)
未经允许不得转载:TI中文支持网 » 利用28069输出频率变化的PWM做LLC控制时,怎样保证PRD和CMP寄存器值同时更新
分享到: 更多 (0)