增强型PWM(EPWM)的输出波形原理

1、简介:

普通的PWM简单配置就能输出指定占空比的波形,一些特殊功能,比如反向,斩波,低电平或高电平指定相位,随意配置等,只能增强型PWM(EPWM)能做到。

EPWMX有3组,分别是EPWM1、EPWM2、EPWM3

EPWM1有2个通道,EPWM1A和EPWM1B
EPWM2有2个通道,EPWM2A和EPWM2B
EPWM3有2个通道,EPWM3A和EPWM3B

2、50%占空比PWM波

2.1、EPWM1A输出50%占空比的PWM波配置:

(1)、TBPRD = 256,1个计数周期
(2)、CMPA = 128,EPWM1A通道的相位
(3)、TBCTL ,配置为增减模式,计数器从0递增到TBPRD,再从TBPRD递减到0,配置TBCLK分频参数为1,且持续运行
(4)、AQCTLA,配置counter为0、counter为PRD时无输出(保持之前状态),counter为CMPA递增阶段输出高,counter为CMPA递减阶段输出低。

2.2、数值计算:
   占空比 = CMPA 相位 / TBPRD 周期

   或高电平占空比 = TBPRD - CMPA + CMPA / TBPRD / 2

(1)增减模式时

   频率 frequency = 主时钟 / TBCLK分频参数 / TBPRD周期 / 2

   注意:增减模式时,2个TBPRD周期才能输出1个周期PWM,所以多除了个2

(2)递增模式或递减模式时

   频率 frequency = 主时钟 / TBCLK分频参数 / TBPRD周期
2.3、输出原理:

增强型PWM(EPWM)的输出波形原理_第1张图片

2.4、实际波形:

增强型PWM(EPWM)的输出波形原理_第2张图片

频率 = (主时钟40M) / (TBCLK分频参数1) / (TBPRD周期256) / (2)= 78.13 K
占空比 = (相位128) / (TBPRD周期256) = 50 %

3、50%占空比斩波,50%占空比的PWM

斩波1周期包含1段PWM波和1段低电平,PWM波在斩波中的比例就叫斩波占空比

增强型PWM(EPWM)的输出波形原理_第3张图片

3.1、EPWM2A通道输出50%占空比斩波,50%占空比PWM的配置:

(1)、TBPRD = 512,1个计数周期
(2)、 CMPA = 256,EPWM2A通道的相位
(3)、TBCTL,配置为增减模式,计数器从0递增到TBPRD,再从TBPRD递减到0,配置TBCLK分频参数为1,且持续运行
寄存器 AQCTLA,配置counter为0、counter为PRD时无输出(保持之前状态),counter为CMPA递增阶段输出高,counter为CMPA递减阶段输出低。
(4)、DBCTL,配置同时打开EPWM2A上升沿和下降沿延时功能。
(5)、DBRED = 32,上升沿延时计数(时钟cycle数)
(6)、DBFED = 32,下降沿延时计数(时钟cycle数)
(7)、PCCTL = 0x0001,打开斩波功能
(8)、PCDUTY = 0x0000ffff,PWM的占空比50%(1的个数占32位的比例)

3.2、数值计算:
   斩波占空比 = CMPA 相位 / TBPRD周期
 
   PWM占空比 = 1的个数占32位的比例 

   1个时钟cycle = 1 / 主时钟 = 多少秒

(1)增减模式时

   斩波频率 frequency = 主时钟 / TBCLK分频参数 / TBPRD周期 / 2
   
   注意:增减模式时,2个TBPRD周期才能完整输出PWM,所以多除了个2

(2)增减模式时

   PWM频率 frequency = 主时钟 / 32
3.3、输出原理:

增强型PWM(EPWM)的输出波形原理_第4张图片

不延迟的斩波,有16个周期PWM输出

延迟的斩波,有15个周期PWM输出

注意:延迟1个周期输出PWM,即会丢失1个周期PWM,再输出剩下的15个周期PWM。
3.4、实际波形:

增强型PWM(EPWM)的输出波形原理_第5张图片

增强型PWM(EPWM)的输出波形原理_第6张图片

  斩波频率 = (主时钟40M) / (TBCLK分频参数1) / (TBPRD周期512) / (2) = 39.0625 K
  上图中斩波周期是25.6 us,斩波频率 = 1 / 0.0000256 s = 39.0625 K

  斩波占空比 = (CMPA 相位 256) / (TBPRD周期 512) = 50%
  配置了延迟,斩波占空比变成了 15 * 800 ns / 25.6 us = 12 us / 25.6 us = 46.875 %

  PWM频率 = (主时钟 40M) / 32 = 1.25 M
  PWM占空比 = 1的个数占32位的比例 = 50%
  
  1个时钟cycle = 1 / (主时钟 40M)  = 0.000000025 s
  32 cycle = 0.000000025 s * 32 = 0.0000008 s = 800 ns(恰好为1个PWM周期)

4、低电平25%占空比PWM

输出低电平或高电平指定占空比的PWM,需要CPMA和CPMB这2个相位配合,配置当counter为CPMA时输出指定动作,配置当counter为CPMB时输出指定动作。

4.1、EPWM1B通道输出低电平25%占空比的PWM配置:

(1)TBPRD = 512,1个计数周期
(2)CMPA = 256,相位1
(3) CMPB = 64,相位2
(4)TBCTL,配置为增减模式,计数器从0递增到TBPRD,再从TBPRD递减到0,配置TBCLK分频参数为1,且持续运行
(5)AQCTLB,配置counter为0、counter为PRD时无输出(保持之前状态),counter为CMPA递增阶段、递减阶段时无输出(保持之前状态)。counter为CMPB递增阶段时输出高,递减阶段时输出低。

4.2、输出原理:

增强型PWM(EPWM)的输出波形原理_第7张图片

4.3、实际波形:

增强型PWM(EPWM)的输出波形原理_第8张图片

 频率 frequency = 主时钟40M / (TBCLK分频参数1) / (TBPRD周期256) / 2 = 78.13 K

 低电平占空比 = CMPB 相位 / TBPRD 周期 = 64 / 256 = 25%

你可能感兴趣的:(驱动开发)