采用up-down计数模式,则PWM的周期可用如下公式计算Tpwm=2*TBPRD*(1/TBCLK);
若使用HRPWM模式,仍是up-down计数模式,则PWM周期的计算公式仍是Tpwm=2*TBPRD*(1/TB=2*TBPRDCLK),还是应该为Tpwm=2*TBPRD*(1/(TBCLK*MEP_ScaleFactor))呢?也就是说如果采用了HRPWM模式的微步长法是否可以说系统时钟频率变为了原来的MEP_ScaleFactor*SYSCLK?还请朋友们给指点一下,谢谢!
hongyue yu:
回复 Eric Ma:
现在有点糊涂了,那现在如果我需要使用HRPWM模块,而且MEP_ScaleFactor也已经设置,此时已配置好了CMPA:CMPAHR,现在计数器的计数步长的周期应该为多少呢?比如说CMPA=200,CMPAHR=23,TBCLK=100MHz,MEP_ScaleFactor=66,那这样的话计数器加1是按照100MHz还是按照100*66MHz的频率计数呢?如果按照100MHz频率计数的话,计数到CMPA=200需要的时间为2us;而如果按照100*66MHz频率计数的话,计数到CMPA=200需要2/66=30.3ns。另外计数器计数到CMPAHR=23需要多长时间呢???
感觉如果还是按照原来的频率计数的话,在TBCLK=100MHz时,PWM的最高频率为5MHz,PWM的精度是达不到10.1bits的。
采用up-down计数模式,则PWM的周期可用如下公式计算Tpwm=2*TBPRD*(1/TBCLK);
若使用HRPWM模式,仍是up-down计数模式,则PWM周期的计算公式仍是Tpwm=2*TBPRD*(1/TB=2*TBPRDCLK),还是应该为Tpwm=2*TBPRD*(1/(TBCLK*MEP_ScaleFactor))呢?也就是说如果采用了HRPWM模式的微步长法是否可以说系统时钟频率变为了原来的MEP_ScaleFactor*SYSCLK?还请朋友们给指点一下,谢谢!
hongyue yu:
回复 Eric Ma:
谢谢Eric大力支持啊!
TI中文支持网



