1、 概念
互补:两根线,输出的PWM,只有一端导通,和死区概念类似。
死区时间:指在这段时间,上下都没有输出
带死区的PWM波可以防止上下两个器件同时导通。也就是说,当一个器件导通后关闭,再经过一段死区,这时才能让另一个导通。
例如:
红色线条的拉低关断一段时间(dead time)后,再拉高下面打开蓝色的
蓝色线条的拉低关断一段时间(dead time)后,再拉高上面打开红色的
2、简单输出带死区的互补PWM波
2.1、寄存器配置
(1)、寄存器 TBPRD = 100,1个计数周期
(2)、寄存器 CMPA = 70,EPWMA通道的相位
(3)、寄存器 CMPB = 30,EPWMB通道的相位
(4)、寄存器 TBCTL ,配置为增减模式,计数器从0递增到TBPRD,再从TBPRD递减到0,配置TBCLK分频参数为1,且持续运行
(5)、寄存器 AQCTLA,配置counter为0、counter为PRD时无输出(保持之前状态),
counter为CMPA递增阶段输出高,counter为CMPA递减阶段输出低。
(6)、寄存器 AQCTLB,配置counter为0、counter为PRD时无输出(保持之前状态),
counter为CMPB递增阶段输出低,counter为CMPA递减阶段输出高。
2.2、数值计算
增减模式时,频率 frequency = 主时钟 / TBCLK分频参数 / TBPRD周期 / 2
EPWMA通道高电平占空比 = (TBPRD - CMPA) / TBPRD = 1 - (CMPA / TBPRD)
EPWMB通道高电平占空比 = CMPB / TBPRD
死区相位 = (CMPA - CMPB)
2.3、输出原理
蓝色和绿色的线条是需要的波形
3、利用反向配置,输出带死区的互补PWM波
3.1、寄存器配置
//(1)、(2)、(3)、(4)、(5)和 2.1节一样,这里只说明不同的配置
(6)、寄存器 AQCTLB,配置counter为0、counter为PRD时无输出(保持之前状态),
counter为CMPB递增阶段输出高,counter为CMPA递减阶段输出低。
(7)、寄存器 DBCTL,配置EPWMB通道反向
3.2、数值计算和 2.2节一致
3.3、输出原理
蓝色和绿色的线条是需要的波形
4、实际波形
上述第2节和第3节的不同的配置,均能得到下图的波形