【原创】TI C2833x介绍---HRPWM(1)
0赞ePWM还有最后的一点没有提到,就是高分辨率PWM。前面我们也提到过,通常情况下,ePWM的分辨率是足够的。但是在载波频率很高,即ePWM计数的周期值很小的时候,分辨率就不能满足这个要求了。
我们知道,PWM的精度或者分辨率为:
ü 分辨率(百分比)=PWM载波频率/fsysclockout*100%
ü 分辨率(位)=log2(PWM载波周期/Tsysclockout)
举两个例子:
假如开关频率为5kHz,DSP时钟频率为100MHz,则
ü 分辨率(百分比)=5000/100e^6*100%=0.005%,看起来很不错。
ü 分辨率(位)=log2(2e-4/100e-10)=14bit
假如开关频率为50kHz,DSP时钟频率为100MHz,则
ü 分辨率(百分比)=50000/100e^6*100%=0.05%
ü 分辨率(位)=log2(2e-5/100e-10)=10bit
如果这时候,我们整好需要分辨率超过10bit,怎么办?HRPWM就是用来在常规PWM的精度不能满足要求的时候提供足够精度的分辨率的。即使是需要在100MHz的时钟频率下产生200kHz的PWM脉冲,其分辨率也可以达到:
分辨率(位)=log2(5e-6/100e-10)≈9bit
我们可以对比一下常规PWM和高分辨率HRPWM在精度上的差异(以sysclockout为100MHz为例,sysclockout更高的话则二者的分辨率都将会提高),如下表所示。
除了显著扩展了传统导出数字PWM的时间分辨率能力这个特点以外,HRPWM还有其它的一些主要特性,包括:
• 通常在有效PWM分辨率下降到低于大约9-10位时使用。 当用一个100MHz的CPU /系统时钟时,PWM频率大于大约200kHz时会发生这种情况。
• 这个功能可被用在占空比和相移控制方法中。
• 通过对ePWM模块的比较A和相位寄存器的扩展来控制更加精细的时间粒度控制或者边沿定位。
•HRPWM功能,只在ePWM模块的A信号路径上提供(也就是说,在EPWMxA输出上提供)。
•EPWMxB输出具有传统PWM功能(目前在28335上只有ePWM1A/2A/3A/4A/5A/6A支持,不过这也可以拼出6路独立的或者3路互补的HRPWM了)。