图4 基于DSP的直接移相脉冲生成方法
可以固定超前臂的驱动在每一周期的T0时刻发出,那么只要延迟移相角Φ对应的时间再发生全比较事件则可以得到滞后臂的驱动,可以实现0°~180°范围内的自由移相。由图4可见,定时器T1的计数方式为连续增减模式,在计数器T1CNT=0和T1CNT=T1PR时分别更新CMPR1和CMPR2的值,这一过程可以分别在T1的下溢中断和周期中断中完成。设移相角Φ对应的延迟时间为Td,显然在0~T/2、T/2~T时间段内,CMPR1、CMPR2值的关系可分别表示如下:
这种脉冲生成方法只需用到DSP的PWM1~PWM4的4个口,而且可以利用死区设置寄存器可编程地直接设置死区,因此非常灵活方便,简单可靠。
3.2 系统软件设计