对于2812,几乎所有的功能都尝试过了,并且已经成功的应用在了工业产品上。早就听说280x系列的dsp有很多增强型的功能,于是忍不住拿来尝试一下。
先说说ePWM吧,相对于TMS320F281x的PWM模块,TMS320F280x的ePWM增强型可以简要的这样理解:
一个ePWM模块分为几个事件单元,分别为EPWM1、EPWM2……。每一个事件单元有两个EPWM输出,分别为EPWMxA与EPWMxB(x表示第x个事件单元)。相互独立且不失同步性,所有事件单元都可以通过一个同步信号紧密的连接在一起,实现同步;另一个方面他们还可以单独工作。如此一来,大大增强了DSP的扩展性。以2806来说,其ePWM模块有四个事件单元,可以产生4对PWM;4对PWM可以独立的设置成4对不同频率的调宽波,而TMS320F281x则只能产生2种不同频率的调宽波(两个事件管理器,一个产生一种频率)。如果不理会同步的概念,可以想象成2806拥有4个类似2812的事件管理器,只是每个事件管理器只能产生2路PWM而2812是3对。
具体来说,可以从以下几个方面来讲:
1、 时钟基准模块(Time-Base Module)
a) 每个事件单元的时钟,通过配置决定了改对PWM的输出频率或周期;
b) 设置时基计数器的技术模式:
i. 异步增模式;
ii. 异步减模式;
iii. 同步连续增减模式。
c) 配置相对于其它事件单元的时基相位;
d) 通过软件或硬件同步时基计数器在模块之间,
e) 同步事件发生后,配置时基计数器的计数方向(增,减);
f) 配置仿真中断后时基计数器的行为;
g) 指定ePWM模块同步输出的源:
i. 同步输入信号;
ii. 时基计数器等于零;
iii. 时基计数器等于CMPB的值;
iv. 没有输出同步信号产生;
2、 计数比较模块;
简单的计数,言简意赅无须赘述。
3、 动作鉴定模块;
a) 配置时基或者比较单元的事件发生后的PWM输出模式
i. 不予理会;
ii. EPWMxA 与EPWMxB输出高或低或反向;
b) 通过软件强迫PWM的输出状态;
c) 通过软件配置死区。
4、 死区产生模块;
因为不像2812那种成对产生相反的PWM,所以死区的设置对于280x系列没有太大的意义。
5、 PWM载波模块;
a) 产生或屏蔽载波频率;
b) 载波频率大小可设置,占空比可设置。
c) 作用,对于驱动功率元件来说,有一定的积极作用
6、 时针模块;
PWM会产生一帧可以设置或高或低的宽度可调的脉冲后才输出正规的脉冲,目前还未发现其积极意义。
7、 事件触发模块。
不论计数比较还是其它的事件,可以设置中断在第几个事件上触发。触发后PWM的输出可以设置高或低。