关于C2833x介绍EPWM

2019-07-25 15:09发布

通常我们用的电压源型逆变器,是通过IGBT、MOSFET等开关管的切换,用单极性或者双极性的脉冲波形来模拟正弦波,如图所示:
1.jpg
这里的基本原则是等面积,即冲量不变的原理。在逆变器直流母线电压固定的情况下,脉冲波的幅值已经确定,使用改变占空比的方法,即对应改变输出基波的幅值。最常用的载波PWM的基本原理,一般都是三角形载波和调制波波形,如正弦波、马鞍波等进行比较,在相交点产生开关状态的切换。三角载波的频率一般在kHz基波,相当于时间域里的一个函数,一般用硬件电路来实现才能保证较好的精度和时域特性。
在TI C2000及类似的电机控制用的DSP出现之前,通常的DSP并不含有专门的PWM产生电路,此时载波的产生以及和调制波的比较工作一般由模拟电路、专门的PWM芯片或者CPLD/FPGA/ASIC/ASSP来实现;由模拟电路搭建的速度很高,但是存在温度漂移等问题;专用的PWM芯片一般只有2路左右的输出,若要控制一个三相逆变器需要多片配合,CPLD/FPGA相对灵活,但是在对成本敏感的系统中仍是不小的开支,ASIC/ASSP则在大公司的产品中才可能采用。TI的C2000系列带有至少12路的PWM输出,并且PWM是专用的外设,其输出PWM等功能并不需要消耗CPU资源,因此极大地方便了系统的设计。
从2407、2812到28335,PWM外设也从事件管理器EV演变到增强的PWM模块,即ePWM。EV中的六路PWM采用同一个载波,且实际只有三个独立,三个互补的输出;而在ePWM中,每个PWM管脚都可以独立地进行配置,当然也可以在同步状态下运行,增强了设计的灵活性。下面是ePWM的一个简要框图描述:
2.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
拿起书本
2019-07-25 18:59
ePWM的时基子模块有5种寄存器,分别为
1.jpg
前两个寄存器包含很多的控制位,所以可以对其中的位进行独立的读/写操作,而后三个寄存器中的内容只代表一个数值,所以不存在单独的位读/写操作。想用好ePWM的强大功能,首先要正确配置各个控制寄存器的功能。下面首先描述TBCTL各个位的含义。
1.jpg
15-14:FREE_SOFT描述了仿真器控制DSP芯片的情况下,仿真暂停时ePWM的运行方式(例如在CCS里面点击了一下halt按钮)。
00:在下次时间基准计数器增或减后停止
01:当计数器完成一个周期后停止:
对于増计数,当计数值TBCTR=周期值TBPRD时停止
对于减计数,当TBCTR=0x0000时停止
对于增减计数,当TBCTR=0x0000时停止
10或者11:自由运行,即不受仿真暂停状态的影响,即使是在CCS里面按下了暂停,ePWM的相关功能仍然在运行。
13:PHSDIR 相位方向控制位,用来决定同步后增减计数器的计数方向,在増计数或减计数模式下此位被忽略
0:同步事件发生后,减计数
1:同步事件发生器,増计数
12~10:CLKDIV 基准时钟分频位,TBCLK=SYSCLKOUT/(CLKDIV×HSPCLKDIV)
000~111(k):分频系数为 2的k次方
9~7 HSPCLKDIV 高速基准时钟分频位,TBCLK=SYSCLKOUT/(CLKDIV×HSPCLKDIV)
000:分频系数为1
001~111(k):分频系数为2×k

一周热门 更多>