Edit online

EPWM 保护模块

Read time: 2 minute(s)
EPWM 保护模块提供了以下几大功能:

EPWM 初始值配置

通过寄存器可以配置 EPWM 的输出信号EPWM0/1/.../11_A 以及 EPWM0/1/.../11_B 在 EPWM 功能未使能的情况下的初始值,表示 EPWM 功能未使能时的初始状态。

EPWM0_A 信号为例,在 EPWM0 模块未使能的情况下,可以有以下的情况:
  • 若 EPWM_A_INIT = 0x0,EPWM 模块未使能,EPWM0_A 输出低电平。
  • 若 EPWM_A_INIT = 0x1,EPWM 模块未使能,EPWM0_A 输出高电平。
  • 若 EPWM_A_INIT = 0x2/3,EPWM 模块未使能,EPWM0_A 输出为高阻态。
计数器停止计数时,通过配置以下寄存器,选择初始值控制:
  • PAUSE_INI_SRC_EN,使能初始值控制全通路。
    使能时,EPWM 模块可以在计数器停止运行时,根据配置的初始值控制逻辑来设置输出信号的状态。
    • 0x0:停止计数时,初始值只控制输出。
    • 0x1:停止计数时,初始值控制全通路。
  • PAUSE_INI_OUT_EN,停止计数是否插入初始值。
    该寄存器用于控制当计数器停止运行时,是否将配置的初始值插入到 EPWM 输出信号中。
    • 0x0:未使能。

    • 0x1:使能,初始值控制最后的输出。

1. 计数器停止计数时初始值控制逻辑配置说明
场景 PAUSE_INI_SRC_EN PAUSE_INI_OUT_EN 初始值控制逻辑
配置 1 0x0 0x0 EPWM_A_INIT 和 EPWM_B_INIT 寄存器配置值不生效。
配置 2 0x0 0x1 计数器停止计数时,EPWM_A_INIT 和 EPWM_B_INIT 控制输出。
配置 3 0x1 0x0 计数器停止计数时,PWM 输出取决于初始值以及输出模式配置。
配置 4 0x1 0x1 计数器停止计数时,PWM 输出取决于初始值配置,但当计数器恢复正常计数时,PWM 输出取决于初始值以及输出模式配置,直到下一次动作发生。

故障模式

EPWM 保护模块可以同时支持两种类型的故障模式:
  • 可恢复故障模式:
    • 当 EPWM_RFLT_ALL 有效,EPWM 模块立即执行故障操作,如果有使能中断模式,则产生 EPWM_RC_FALT_INT 中断。
    • 当计数器计数复位至 0,若 EPWM_RFLT_ALL 信号变回无效状态,EPWM 的故障操作解除,EPWM 可以继续正常工作。
  • 不可恢复故障模式:
    • 当 EPWM_NRFLT_ALL 有效,EPWM 模块立即执行故障操作,如果有使能中断模式,则产生 EPWM_NRC_FALT_INT 中断。
    • 当出现不可恢复的故障时,EPWM 一直处于故障操作的状态,不能修改。

      不可恢复故障的消除,只能通过软件写寄存器消除此状态,才可以使得 EPWM 再次正常工作。

故障指示输入

故障指示的输入源来自引脚 GPIO、内部比较模块 CPM 和内部 SDFM 模块ADC 看门狗输出信号。这类输入信号经过 OR 逻辑可以得到 EPWM_RFLT_ALL 和 EPWM_NRFLT_ALL 信号,分别触发进入可恢复故障模式和不可恢复故障模式。
注: CPM 的故障输入以及 SDFM 的故障输入信号,固定为高电平有效,不可配置。
故障指示输入包括:
  • 可恢复故障指示输入


    1. EPWM 可恢复故障指示输入
  • 不可恢复故障指示输入:


    2. EPWM 不可恢复故障指示输入

故障操作

当故障指示输入有效时,EPWM 强制执行故障操作,EPWM 输出信号的故障操作包括:
注: 通过配置寄存器,软件可以强制 EPWM 输出执行故障操作。
  • EPWM 强制输出高电平

  • EPWM 强制输出低电平

  • EPWM 强制输出高阻态

  • 无操作

故障延迟操作

EPWMA 和 EPWMB 的输出保护均支持保护延迟的操作,通过寄存器 EPWMA/B_FLT_PRTCT_DLY 控制,可以独立配置延迟 1/2/3/.../15 us。

故障中断

故障中断,由可恢复故障中断 EPWM_RC_FALT_INT 与不可恢复中断 EPWM _NRC_FALT_INT 进行或逻辑所得 EPWM_FALT_INT 信号。