EPWM模块的时钟和系统时钟的关系
在设置EPWM的波形频率的时候,需要设置两个分频系数
EPwm1Regs.TBCTL.bit.HSPCLKDIV=TB_DIV1;
EPwm1Regs.TBCTL.bit.CLKDIV=TB_DIV1;
由此可以得到PWM波形的频率为
但需要注意的是,这两个分频系数作用的频率并不是DSP的主频,而是EPWM的主频EPWMCLK,在这篇E2E问答帖子中有提到,EPWM模块的时钟最大为100MHz,所以在主频为200MHz时,默认将会对其2分频之后生成EPWMCLK,然后再进一步地通过HSPCLKDIV和CLKDIV二次分频,得到波形的实际频率。
在数据手册中提到
默认时钟分频:默认情况下,ePWM(增强型脉宽调制)、EMIF1(外部存储器接口1)和EMIF2(外部存储器接口2)时钟都有一个额外的/2分频器。这是为了支持超过100 MHz的CPU频率。在较低的CPU频率下,可以通过PERCLKDIVSEL寄存器禁用这些分频器。