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

piccolo 2803x hrepwm 问题请教

您好!piccolo高精度PWM有几个问题咨询下,非常感谢您!

1)SPRUGE8E手册中关于CMPAHR的计算:

Step 2: Fractional value conversion for CMPAHR register
CMPAHR register value = (frac(PWMDuty*PWMperiod)*MEP_ScaleFactor+0.5
) << 8; frac means fractional part
= (frac( 19.4)* 93 + 0.5) <<8; Shift is to move the value
as CMPAHR high byte
= (( 0.4 * 93 + 0.5) << 8)
= ( 37.2 + 0.5) <<8
= 37.7*256 ; Shifting left by 8 is the same as multiplying
by 256.
= 9651
CMPAHR value = 25B3h; CMPAHR value = 25B3h, lower 8 bits will be

ignored by hardware.

1)请问MEP_ScaleFactor这个值是通过SFO_TI_Build_V6.lib库函数中通过

系统时钟的不同以及DSP运行状况获得的吗?这个地方93(微调步长180ps)只是一个假定值吗?

2)如果我在PWM初始化时赋值EPWM1Regs.HRMSTEP=0x0080,那么这个值最终还是被SFO_TI_Build_V6.lib库函数获取的

EPWM1Regs.HRMSTEP=MEP_ScaleFactor覆盖掉吗?非常感谢您!

Eric Ma:

1)MEP_ScaleFactor是调用库获得,93即使那个库出来的结果。

2)是。

C:\ti\controlSUITE\device_support\f2803x\v130\DSP2803x_examples_ccsv5\hrpwm_duty_sfo_v6

参考历程。

ERIC

您好!piccolo高精度PWM有几个问题咨询下,非常感谢您!

1)SPRUGE8E手册中关于CMPAHR的计算:

Step 2: Fractional value conversion for CMPAHR register
CMPAHR register value = (frac(PWMDuty*PWMperiod)*MEP_ScaleFactor+0.5
) << 8; frac means fractional part
= (frac( 19.4)* 93 + 0.5) <<8; Shift is to move the value
as CMPAHR high byte
= (( 0.4 * 93 + 0.5) << 8)
= ( 37.2 + 0.5) <<8
= 37.7*256 ; Shifting left by 8 is the same as multiplying
by 256.
= 9651
CMPAHR value = 25B3h; CMPAHR value = 25B3h, lower 8 bits will be

ignored by hardware.

1)请问MEP_ScaleFactor这个值是通过SFO_TI_Build_V6.lib库函数中通过

系统时钟的不同以及DSP运行状况获得的吗?这个地方93(微调步长180ps)只是一个假定值吗?

2)如果我在PWM初始化时赋值EPWM1Regs.HRMSTEP=0x0080,那么这个值最终还是被SFO_TI_Build_V6.lib库函数获取的

EPWM1Regs.HRMSTEP=MEP_ScaleFactor覆盖掉吗?非常感谢您!

dengji liu:

回复 Eric Ma:

你好,请问有没有具体的关于移相时hrepwm的配置啊,我在做全桥移相,但是不知道hrepwm如何配置。

赞(0)
未经允许不得转载:TI中文支持网 » piccolo 2803x hrepwm 问题请教
分享到: 更多 (0)