ZHCAFI8 July   2025 TDA4VE-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2了解 TDA4x 上的 PWM 工作机制
    1. 2.1 PWM 架构概述
    2. 2.2 计数器比较寄存器和占空比控制
    3. 2.3 动作限定器与输出行为
    4. 2.4 同步与更新时序
  6. 3立即 CMPA 寄存器更新导致的 PWM 占空比异常
  7. 4向上/向下计数模式下的非预期 PWM 占空比
  8. 5适用于 LED 调光控制的无缝 PWM 更新最佳实践
    1. 5.1 使用影子寄存器进行占空比更新
    2. 5.2 选择相应的计数器模式
    3. 5.3 影子寄存器下向上计数模式的寄存器配置
  9. 6总结
  10. 7参考资料

向上/向下计数模式下的非预期 PWM 占空比

在使用 PWM 的 LED 调光应用中,保持预期的亮度转换至关重要。但是,当使用向上/向下计数模式生成 PWM 时,PWM 中心对齐,这会导致非预期的占空比,因此在占空比变化期间可能会出现非预期的亮度闪烁或干扰。让我们通过将占空比从 20% 改为 80% 的实例(同时应用影子寄存器更新),来理解和分析上下计数模式下为何会出现这一问题。

向上/向下计数模式会使用动作限定器 (AQ) 模块的两个事件。当 TBCNT = CMPA 时,PWM 信号会发生翻转,但此事件在一个 PWM 周期内会出现两次,一次在向上计数阶段,一次在向下计数阶段。

以下寄存器配置可用于在向上/向下计数模式下生成 20% 的 PWM 占空比。

EPWM_TBPRD = 62500
EPWM_TBCTL.CTRMODE = 0x2 → Up-down count mode
EPWM_CMPA = 12500 (= 62500 x 20%)
EPWM_CMPCTL.SHDWAMODE = 0 → Shadow mode

如下图所示,通过更新 CMPA 寄存器使 PWM 占空比达到 80%。

EPWM_CMPA = 50000 (= 62500 x 80%)

图 4-1 是由逻辑分析仪探测到的 PWM 波形。

 探测向上/向下计数模式下更新 CMPA 寄存器期间的 PWM 变化图 4-1 探测向上/向下计数模式下更新 CMPA 寄存器期间的 PWM 变化

预期占空比会从 20% 直接变为 80%,但实际出现了 71% 这一非预期的占空比。

 分析向上/向下计数模式下 PWM 占空比从 20% 变为 80%图 4-2 分析向上/向下计数模式下 PWM 占空比从 20% 变为 80%

具体分析如下。

  • 当前占空比 = 20%。
    方程式 6. Duty = 100 × 2500025000 + 100000 = 20%
  • 软件会在 ① 至 ② 之间将 50000 写入 CMPA 寄存器。
  • CMPA 寄存器处于影子模式,会在 TBCNT = 0 时更新。
  • 当 TBCNT = 0(即 ② 时刻)时,PWM 发生翻转,占空比变为 71%。
    方程式 7. Duty = 100 × 6250062500 + 25000 = 71%
  • 从后续 PWM 周期开始,PWM 占空比变为 80%。
    方程式 8. Duty =100 × 100000100000 + 25000 = 80% 

图 4-2 中,通过更新 CMPA 寄存器值来更改 PWM 占空比,并使用影子技术相应地更新 CMPA 寄存器值。这意味着 CMPA 寄存器值的更新是确定性的,会在 TBCNT 为零的事件发生时进行。

即便使用了影子模式,PWM 占空比仍是从 20% 转换到 25%,再到 80%。这是中心对齐 PWM 生成方式的固有特性,无法避免,可能会在 LED 调光控制应用中导致 LED 闪烁等非预期结果。