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

请问一下svgen模块

请问svgen输出的Ta,Tb,Tc是占空比还是导通时间,我看程序f28335xpwm.h模块中有下面几句话

(*ePWM[ch1]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC1)+ v.HalfPerMax; \
(*ePWM[ch2]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC2)+ v.HalfPerMax; \
(*ePWM[ch3]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC3)+ v.HalfPerMax; \

那这说明是占空比啊,可怎么会是占空比呢,svgen都不知道epwm周期怎么算占空比啊?

还有一个问题是

_IQmpy(m.HalfPerMax,m.MfuncC1)+ m.HalfPerMax;
其中m.HalfPerMax是Q0,m.MfuncC1是Q24这两个乘完是Q24啊,那Q24和Q0怎么相加啊?

haha haha1:

回复 Eric Ma:

谢谢你的回答,对于第二个问题,TI源码里面就是这么写的啊!!

请问svgen输出的Ta,Tb,Tc是占空比还是导通时间,我看程序f28335xpwm.h模块中有下面几句话

(*ePWM[ch1]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC1)+ v.HalfPerMax; \
(*ePWM[ch2]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC2)+ v.HalfPerMax; \
(*ePWM[ch3]).CMPA.half.CMPA = _IQmpy(v.HalfPerMax,v.MfuncC3)+ v.HalfPerMax; \

那这说明是占空比啊,可怎么会是占空比呢,svgen都不知道epwm周期怎么算占空比啊?

还有一个问题是

_IQmpy(m.HalfPerMax,m.MfuncC1)+ m.HalfPerMax;
其中m.HalfPerMax是Q0,m.MfuncC1是Q24这两个乘完是Q24啊,那Q24和Q0怎么相加啊?

haha haha1:

回复 Eric Ma:

那你的意思就是说这个TI源码有错误啦!!

_IQmpy(v.HalfPerMax,v.MfuncC1)可以改成_IQmpy24(v.HalfPerMax,v.MfuncC1)可以吗?

赞(0)
未经允许不得转载:TI中文支持网 » 请问一下svgen模块
分享到: 更多 (0)