28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
Rayna Wang:请参考高精度PWM例程C:\ti\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Cpu1\hrpwm_prdupdown_sfo_v8
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
zhennan wang:
回复 Rayna Wang:
28377的PWM的时钟频率最高为100MHZ,但是controlsuit里的例程只有12.5MHZ,我把SYSCLKDIVSEL和PERCLKDIVEL两个寄存器清零之后也只有50MHZ,PWM的时钟公式是TBCLK=EPWMCLK/(HSPCLKDIV*CLKDIV),我现在HSPCLKDIV和CLKDIV都配置为0了。请教一下还要改哪里才能把时钟配置成100MHZ。
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
Rayna Wang:
回复 zhennan wang:
你是怎么测出EPWM时钟频率是12.5MHz呢?
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
zhennan wang:
回复 Rayna Wang:
我用示波器测得
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
zhennan wang:
回复 Rayna Wang:
我TBPRD设为100,测出PWM为250KHZ,是单次事件触发
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
Rayna Wang:
回复 zhennan wang:
你好,我把例程C:\ti\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Cpu1\hrpwm_prdupdown_sfo_v8下载到control card上,然后将
如下程序中的period由20改为100,用示波器测试EPWM频率是500khz,因EPWM配置是updown模式,所以是符合要求的。HRPWM_Config(100);// ePWMx target
建议你重新检查相关配置或者重新导入原始程序,再测试,谢谢!
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
zhennan wang:
回复 Rayna Wang:
这个是高速的PWM啊,我用普通的PWM可以吗
28377的EPWM周期分辨率是150ps但是我从CONTROLSUIT里面找到的例程没有这么高,并且EPwm2Regs.TBCTL.bit.CLKDIV = TB_DIV1;这句也没有分频,应该如何更改?
zhennan wang:
回复 Rayna Wang:
十分感谢您,我在试一试