<!-- 本文件由脚本自动转换生成，请勿手动编辑 -->

> **《LKS32MC09x User Manual》MCPWM** . 完整目录见 [README.md](README.md)
>
> **声明**：本文档由芯片用户手册自动转换生成，仅供检索与查阅参考。Markdown 格式可被自由编译、修改，本文档不构成正式技术文件，相关内容以凌鸥创芯官方网站正式发布的手册为准。
>
> 南京凌鸥创芯电子有限公司 . (C) 2023, 版权归凌鸥创芯所有 . 机密文件，未经许可不得扩散

# MCPWM

## 概述

MCPWM模块，是一个精确控制电机驱动波形输出的模块。

包含一个16位递增计数器，用于提供计数周期（以下称为时基）。计数器的时钟分频有1/2/4/8四种选项，产生的的分频时钟频率分别为96MHz/48MHz/24MHz/12MHz。

MCPWM模块共包含4个PWM生成子模块。

\- 可以产生4对（互补信号）或8路独立（边沿模式）不交叠的PWM信号；

\- 支持边沿对齐PWM

\- 中心对齐PWM

\- 移相PWM

同时可以产生4路与MCPWM同时基的定时信息，用于触发ADC模块同步采样，进行与MCPWM的联动。

包含一组急停保护模块，用于不依赖CPU软件的处理快速关断MCPWM模块输出。MCPWM模块可输入8路急停信号，其中2路来自芯片IO，2路来自片内比较器的输出,4路来自CLU模块输出。当急停事件发生时（支持有效电平极性选择），把所有MCPWM输出信号复位到软件指定状态，以避免短路发生。

对急停信号有独立滤波模块。

MCPWM的每个输出IO支持两种控制模式:PWM硬件控制或者软件直接控制（用于EABS软刹车，或BLDC方波换相控制）。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-1 MCPWM模块框图

为了保证定时精度，通常采用96MHz的时钟作为MCPWM模块工作频率。

### Base Counter模块

该模块主要是由递增计数器组成，其计数门限值为MCPWM0_TH0，计数器从t0时刻开始从-TH递增计数，在t1时刻过0点，在t2时刻计数到TH完成一次计数循环，回到-TH，重新开始计数。计数周期为(TH×2+1)×计数时钟周期。

在t0/t1(本次t0即上一次t2)可产生定时事件中断，MCPWM0_IFx.T0_IF和MCPWM0_IFx.T1_IF将被置位。

可通过寄存器配置MCPWM0_TCLK.BASE_CNT0_EN控制Base Counter 0的启动和停止。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-2
Base Counter t0/t1时序

在运行MCPWM模块前，用户一般需要将门限值MCPWM0_TH00~MCPWM0_TH31，死区寄存器MCPWM0_DTH00/
MCPWM0_DTH01配置好。在实际运行过程中，也可动态改变比较门限值和死区寄存器。这些配置好的寄存器，可通过写MCPWM0_UPDATE寄存器实现手动更新，也可以通过配置MCPWM0_SDCFG.T1_UPDATE_EN及MCPWM0_SDCFG.T0_UPDATE_EN进行硬件自动更新。硬件更新，仅在t0及t1时刻（可配置t0或t1更新和t0
t1时刻都更新）才能产生更新事件，硬件把加载寄存器的值载入到实际运行的寄存器中。而更新事件的发生频率可以配置，即每间隔N个t0及t1时刻才发生更新。无论是否发生更新，t0/t1时刻均可产生相应的中断。若硬件把加载寄存器的值到载入实际运行的寄存器后，产生装载中断。

通过配置MCPWM0_SDCFG寄存器选择更新发生在t0或者t1或者t0/t1都更新，配置更新间隔数，间隔数为1~16。最频繁的更新配置为更新发生在t0和t1，连续发生。最低速的更新配置为更新发生在t1，每16个t1更新一次。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-3
MCPWM更新机制

TH寄存器MCPWM0_THx和计数寄存器MCPWM0_CNTx（x=0）均存在影子寄存器，且均支持手动更新（通过软件向MCPWM0_UPDATE写入对应位进行更新）和自动更新（发生特定硬件事件触发更新）。影子寄存器可以在不开启MCPWM
TCLK时钟（即MCPWM0_TCLK.TCLK_EN=0）的情况下进行更新。MCPWM0_TCLK.BASE_CNT0_EN控制计数使能。当MCPWM0_TCLK.BASE_CNT0_EN=0时，时基0的CNT在完成更新后保持值不变，等待BASE_CNT0_EN=1之后才开始计数递增。

此外，为了精确控制第一个MCPWM周期的计数，建议将MCPWM0_THx和MCPWM0_CNTx同时更新。当然也支持MCPWM0_THx和MCPWM0_CNTx分别更新。然后再通过软件写入或外部事件触发计数开始，从而将MCWPM_TCLK.BASE_CNT0_EN置位，使能CNT计数。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-4 时基寄存器更新与计数使能流程图

### FAIL信号处理

FAIL信号即急停信号，主要用于在出现异常时迅速关断功率管，以免造成不可逆的硬件损坏。该信号处理模块主要是根据实际情况设置急停事件，实现快速关断PWM的输出。有8路fail信号输入MCPWM，2路来自芯片IO
MCPWM0_BKIN\[1:0\]，2路来自芯片内部模拟比较器的输出CMP\[1:0\]，4路来自CL模块输出。

其中MCPWM的4组P/N通道0/1/2/3都可以选择使用CMP\[1:0\]，MCPWM0_BKIN\[1:0\]或CL_OUTPUT\[3:0\]。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-5
MCPWM_CH_FAIL逻辑示意图

Filter滤波模块的时钟，来自系统主时钟MCLK的门控时钟FCLK，见SYS_CLK_FEN，并经过可选的两级分频，第一级分频由MCPWM0_TCLK.CLK_DIV控制，进行1/2/4/8倍分频。第二级分频可实现1~256倍的分频，使用MCPWM0_TCLK.FLT_CLKDIV\[7:0\]作为第二级的分频系数。如图
14-6所示。

MCPWM模块使用分频后的时钟进行Fail信号滤波，滤波宽度固定为16个周期，即输入信号必须保持至少16个分频时钟周期（两级分频后的时钟）稳定后，硬件才判定其为有效输入信号。滤波时间常数的公式为，其中T<sub>MCLK</sub>为MCLK/FCLK\[4\]的时钟周期，96MHz对应10.42ns。

T = T<sub>MCLK</sub>×(MCPWM0_TCLK.CLK_DIV)×(MCPWM0_TCLK.FLT_CLKDIV+1)×16

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图
14-6 MCPWM Fail信号滤波时钟生成逻辑

一旦发生FAIL事件，硬件将IO输出强制变为MCPWM0_CH_DEFx.CHxN_DEFAULT和
MCPWM0_CH_DEF.CHxP_DEFAULT寄存器所指定的故障缺省值，此时MCPWM0_CH_DEF.CHxN_DEFAULT和
MCPWM0_CH_DEF.CHxP_DEFAULT的值直接输出到IO口，不再受到MCPWM0_CH_FAILx.FAIL_POL等极性控制的影响。其中MCPWM0_CH_FAIL用于控制通的故障缺省设置。

**来自比较器的MCPWM
FAIL信号为模拟比较器输出的原始信号，未经过比较器数字接口模块的滤波处理，但是可以被MCPWM的通道信号进行开窗控制，开窗控制设置见比较器数字接口模块。FAIL信号进入MCPWM模块后，可以通过设置MCPWM_TCLK进行滤波。**

### MCPWM 特殊输出状态

电机控制中经常会用到全0和全1输出状态，以下互补模式设置可以得到期望的输出。

1.  如果THn0≥THn1，芯片处于恒0状态（CH\<n\>P关闭，CH\<n\>N开启），无死区
2.  如果THn0=-TH，THn1=TH，芯片处于恒1状态（CH\<n\>P开启，CH\<n\>N关闭），无死区

### IO DRIVER模块

该模块根据实际MCPWM的寄存器配置情况，将IO设置到相应电平。IO
Driver模块的整体数据流程图如下:
【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-7 IO
Driver模块数据流程图

#### MCPWM 波形输出-中心对齐模式

4个MCPWM IO
Driver采用独立的控制门限，独立死区宽度（每一对互补IO的死区需要独立配置，即4个死区配置寄存器），共享数据更新事件。

采用TH\<n\>0和TH\<n\>1控制第\<n\>个MCPWM
IO的启动、关闭动作，n为0/1/2/3。

当计数器CNT值向上计数达到TH\<n\>0(即t3时刻)，关闭CH\<n\>N，经过死区延时DTH00，打开CH\<n\>P。

当计数器CNT值向上计数达到TH\<n\>1(即t4时刻)，关闭CH\<n\>P，经过死区延时DTH01，打开CH\<n\>N。

采用独立的启动和关闭时间控制，可以提供相位控制的能力。

死区延时保证CH\<n\>P/CH\<n\>N不会同时打开，避免短路发生。

t3/t4时刻均会产生相应中断。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-8MCPWM时序TH\<n\>0和TH\<n\>1-中心对齐模式

#### MCPWM波形控制-中心对齐推挽模式

中心对齐推挽模式。第一个周期内，在t3时刻CH\<n\>P打开，在t4时刻，CH\<n\>P关闭。第二个周期内，在t3时刻CH\<n\>N打开，在t4时刻，CH\<n\>N关闭。

t3/t4时刻均会产生相应中断。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-9
MCPWM时序TH\<n\>0和TH\<n\>1-中心对齐推挽模式

#### MCPWM波形输出-边沿对齐模式

边沿对齐模式。在t0时刻CH\<n\>P/CH\<n\>N同时打开，在t3时刻，CH\<n\>P关闭；在t4时刻，CH\<n\>N关闭。

t3/t4时刻均会产生相应中断。

边沿对齐模式下，CH\<n\>P/CH\<n\>N无需死区保护。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-10MCPWM时序边沿对齐模式

#### MCPWM波形控制-边沿对齐推挽模式

边沿对齐推挽模式。第一个周期内，在t0时刻CH\<n\>P打开，在t3时刻，CH\<n\>P关闭。第二个周期内，在t0时刻CH\<n\>N打开，在t3时刻，CH\<n\>N关闭。

t0/t3时刻均会产生相应中断。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-11MCPWM时序TH\<n\>0和TH\<n\>1边沿对齐推挽模式

#### MCPWM IO死区控制

MCPWM IO是一对互斥控制信号CH\<n\>P/CH\<n\>N，控制如下图所示的电路，

当CH\<n\>P为高/CH\<n\>N为低时，Vout输出高（VDD）；

当CH\<n\>P为低/CH\<n\>N为高时，Vout输出低（VSS）；

当CH\<n\>P为高/CH\<n\>N为高时，Vout输出不确定，但是会产生VDD到VSS的短路；

当CH\<n\>P为低/CH\<n\>N为低时，Vout输出不确定。

必须避免CH\<n\>P/CH\<n\>N同时打开的情况。死区的引入，可以有效避免VDD到VSS的短路。

四组MCPWM IO的死区宽度共享同一个死区宽度设置MCPWM0_DTH0/1。

对于互补模式MCPWM IO自动插入死区。

对于边沿对齐模式，MCPWM IO无死区。

在IO
Driver模块中增加CH\<n\>P/CH\<n\>N冲突检测，发生冲突时，自动将IO拉低，同时给出错误中断（错误中断标志位可软件清除或者硬件自动清除）。

MCPWM
IO也可通过软件配置的方式输出，此时，死区控制通过软件实现，如果MCPWM模块配置为中心对齐模式，硬件短路保护机制仍有效，保证P和N不同时打开。

CH\<n\>P/CH\<n\>N，在IO上可以互换。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-12MCPWM
IO控制示意图

#### MCPWM IO极性设置

CH\<n\>P/CH\<n\>N的有效电平可以配置为高有效/低有效，每个IO的有效电平单独可配。CH\<n\>P/CH\<n\>N输出到IO的位置通过软件配置可以互换。

#### MCPWM IO自动保护

当发生急停事件（Fail事件），应立刻将CH\<n\>P/CH\<n\>N自动切换到默认安全电平状态。需要注意默认电平配置（MCPWM0_CH_DEF.CHxN_DEFAULT和MCPWM0_CH_DEF.CHxP_DEFAULT控制默认电平）。

- 芯片正常工作后，IO默认输出的电平是寄存器MCPWM0_CH_DEF.CHxN_DEFAULT和MCPWM0_CH_DEF.CHxP_DEFAULT指定值，当用户配置完毕，MCPWM正常工作后，配置MCPWM0_CH_FAIL.MCPWM0_OE（即MOE）为1，IO输出电平受到MCPWM
  IO模块控制。
- 当发生FAIL短路状况时，硬件立即切换到IO默认输出电平。
- 当芯片调试中，CPU被上位机软件暂停运行时，可暂停MCPWM正常输出，转而输出默认电平值。

【图片已删除】为控制知识库体积，本文档不携带图片，相关图示请查阅凌鸥创芯官网发布的正式手册。

图14-13 Fail 保护与输出控制流程图

### ADC Trigger TIMER模块

MCPWM可以提供ADC采样控制。当计数器计数到MCPWM0_TMR0/ MCPWM0_TMR1/
MCPWM0_TMR2/
MCPWM0_TMR3时，可产生定时事件，触发ADC采样。该触发信号可同时输出到GPIO，便于调试之用。输出的具体GPIO，参见对应器件的datasheet。

表14-1
MCPWM计数器阈值与事件对应表

|||
|---|---|
|MCPWMx 时基0 t0事件|MCPWMx_CNT0==-MCPWMx_TH0|
|MCPWMx时基0 t1事件|MCPWMx_CNT0==0|
|MCPWMx TIO0\[0\] 事件|MCPWMx_CNT0==MCPWMx_TH00|
|MCPWMx TIO0\[1\] 事件|MCPWMx_CNT0==MCPWMx_TH01|
|MCPWMx TIO1\[0\] 事件|MCPWMx_CNT0==MCPWMx_TH10|
|MCPWMx TIO1\[1\] 事件|MCPWMx_CNT0==MCPWMx_TH11|
|MCPWMx TIO2\[0\] 事件|MCPWMx_CNT0==MCPWMx_TH20|
|MCPWMx TIO2\[1\] 事件|MCPWMx_CNT0==MCPWMx_TH21|
|MCPWMx TIO3\[0\] 事件|MCPWMx_CNT0==MCPWMx_TH30|
|MCPWMx TIO3\[1\] 事件|MCPWMx_CNT0==MCPWMx_TH31|
|MCPWMx TADC\[0\] 事件|MCPWMx_CNT0== MCPWMx_TMR0|
|MCPWMx TADC \[1\] 事件|MCPWMx_CNT0== MCPWMx_TMR1|
|MCPWMx TADC \[2\] 事件|MCPWMx_CNT0== MCPWMx_TMR2|
|MCPWMx TADC \[3\] 事件|MCPWMx_CNT0== MCPWMx_TMR3|

### 中断

MCPMW_IF0和MCPWM0_EIF\[5:4\]、MCPWM0_EIF\[8\]标志置位且使能的情况下，产生MCPWM0_IRQ0中断；

## 寄存器

### 地址分配

MCPWM模块寄存器的基地址是0x4001_0C00，

寄存器列表如下:

表14-2
MCPWM模块寄存器列表

||||
|---|---|---|
|名称|偏移地址|说明|
|MCPWM0_TH00|0x00|MCPWM CH0_P比较门限值寄存器|
|MCPWM0_TH01|0x04|MCPWM CH0_N比较门限值寄存器|
|MCPWM0_TH10|0x08|MCPWM CH1_P比较门限值寄存器|
|MCPWM0_TH11|0x0C|MCPWM CH1_N比较门限值寄存器|
|MCPWM0_TH20|0x10|MCPWM CH2_P比较门限值寄存器|
|MCPWM0_TH21|0x14|MCPWM CH2_N比较门限值寄存器|
|MCPWM0_TH30|0x18|MCPWM CH3_P比较门限值寄存器|
|MCPWM0_TH31|0x1C|MCPWM CH3_N比较门限值寄存器|
|MCPWM0_TMR0|0x30|ADC采样定时器比较门限0寄存器|
|MCPWM0_TMR1|0x34|ADC采样定时器比较门限1寄存器|
|MCPWM0_TMR2|0x38|ADC采样定时器比较门限2寄存器|
|MCPWM0_TMR3|0x3C|ADC采样定时器比较门限3寄存器|
|MCPWM0_TH0|0x40|MCPWM时基0门限值寄存器|
|MCPWM0_CNT0|0x48|MCPWM时基0计数器寄存器|
|MCPWM0_UPDATE|0x50|MCPWM加载控制寄存器|
|MCPWM0_FCNT|0x54|MCPWM FAIL时刻CNT值|
|MCPWM0_EVT0|0x58|MCPWM时基0外部触发|
|MCPWM0_DTH00|0x60|MCPWM P通道死区宽度控制寄存器|
|MCPWM0_DTH01|0x64|MCPWM N通道死区宽度控制寄存器|
|MCPWM0_FLT|0x70|MCPWM滤波时钟分频寄存器|
|MCPWM0_SDCFG|0x74|MCPWM加载配置寄存器|
|MCPWM0_AUEN|0x78|MCPWM自动更新使能寄存器|
|MCPWM0_TCLK|0x7C|MCPWM时钟分频控制寄存器|
|MCPWM0_IE0|0x80|MCPWM时基0中断控制寄存器|
|MCPWM0_IF0|0x84|MCPWM时基0中断标志位寄存器|
|MCPWM0_EIE|0x90|MCPWM异常中断控制寄存器|
|MCPWM0_EIF|0x94|MCPWM异常中断标志位寄存器|
|MCPWM0_RE|0x98|MCPWM DMA请求控制寄存器|
|MCPWM0_PP|0x9C|MCPWM推挽模式使能寄存器|
|MCPWM0_IO01|0xA0|MCPWM CH0 CH1 IO控制寄存器|
|MCPWM0_IO23|0xA4|MCPWM CH2 CH3 IO控制寄存器|
|MCPWM0_CH_FAIL|0xB0|MCPWM CH短路控制寄存器|
|MCPWM0_CH_DEF|0xB8|MCPWM短路保护通道输出默认值|
|MCPWM0_CH_MSK|0xBC|MCPWM通道屏蔽寄存器|
|MCPWM0_PRT|0xC0|MCPWM保护寄存器|
|MCPWM0_SW_FAIL|0xD0|MCPWM 软件FAIL调试寄存器|

表 14-3
受MCPWM0_PRT保护的寄存器

||||
|---|---|---|
|名称|偏移地址|说明|
|MCPWM0_TH0|0x30|MCPWM门限值寄存器|
|MCPWM0_DTH00|0x60|MCPWM CH0/1/2 N通道死区宽度控制寄存器|
|MCPWM0_DTH01|0x64|MCPWM CH0/1/2 P通道死区宽度控制寄存器|
|MCPWM0_FLT|0x70|MCPWM滤波时钟分频寄存器|
|MCPWM0_SDCFG|0x74|MCPWM加载配置寄存器|
|MCPWM0_AUEN|0x78|MCPWM自动加载使能寄存器|
|MCPWM0_TCLK|0x7C|MCPWM时钟分频控制寄存器|
|MCPWM0_IE0|0x80|MCPWM时基0中断控制寄存器|
|MCPWM0_EIE|0x90|MCPWM异常中断控制寄存器|
|MCPWM0_RE|0x98|MCPWMDMA请求控制寄存器|
|MCPWM0_PP|0x9C|MCPWM推挽模式使能寄存器|
|MCPWM0_IO01|0xA0|MCPWM CH0 CH1 IO控制寄存器|
|MCPWM0_IO23|0xA4|MCPWM CH2 CH3 IO控制寄存器|
|MCPWM0_CH012_FAIL|0xB0|MCPWM CH0 CH1 CH2短路控制寄存器|
|MCPWM0_CH_DEF|0xB8|MCPWM短路保护通道输出值|
|MCPWM0_CH_MSK|0xBC|MCPWM通道屏蔽寄存器|
|MCPWM0_SW_FAIL|0xD0|MCPWM 软件FAIL调试寄存器|

表 14-4
存在影子寄存器的寄存器

||||
|---|---|---|
|名称|偏移地址|说明|
|MCPWM0_TH00|0x00|MCPWM CH0_P比较门限值寄存器|
|MCPWM0_TH01|0x04|MCPWM CH0_N比较门限值寄存器|
|MCPWM0_TH10|0x08|MCPWM CH1_P比较门限值寄存器|
|MCPWM0_TH11|0x0C|MCPWM CH1_N比较门限值寄存器|
|MCPWM0_TH20|0x10|MCPWM CH2_P比较门限值寄存器|
|MCPWM0_TH21|0x14|MCPWM CH2_N比较门限值寄存器|
|MCPWM0_TH30|0x18|MCPWM CH3_P比较门限值寄存器|
|MCPWM0_TH31|0x1C|MCPWM CH3_N比较门限值寄存器|
|MCPWM0_TMR0|0x30|ADC采样定时器比较门限0寄存器|
|MCPWM0_TMR1|0x34|ADC采样定时器比较门限1寄存器|
|MCPWM0_TMR2|0x38|ADC采样定时器比较门限2寄存器|
|MCPWM0_TMR3|0x3C|ADC采样定时器比较门限3寄存器|
|MCPWM0_TH0|0x40|MCPWM时基0门限值寄存器|
|MCPWM0_CNT0|0x48|MCPWM时基0计数器寄存器|
|MCPWM0_IO01|0xA0|MCPWM CH0 CH1 IO控制寄存器|
|MCPWM0_IO23|0xA4|MCPWM CH2 CH3 IO控制寄存器|

**对于所有存在影子寄存器的MCPWM配置寄存器，写入时，写入的是预装载寄存器，更新事件发生时才会把预装载寄存器值写入影子寄存器，读出时读出的是影子寄存器的值。**

### MCPWM0_TH00

无写保护的寄存器

地址:0x4001_0C00

复位值:0x0

表14-5
MCPWM0_TH00配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH00||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH00|MCPWM CH0_P比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。写入的是预装载寄存器，更新事件发生时才会把预装载寄存器值写入影子寄存器，读出时读出的是影子寄存器的值。|

### MCPWM0_TH01

无写保护的寄存器

地址:0x4001_0C04

复位值:0x0

表14-6
MCPWM0_TH01配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH01||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH01|MCPWM CH0_N比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH10

无写保护的寄存器

地址:0x4001_0C08

复位值:0x0

表14-7
MCPWM0_TH10配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH10||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|15:0\]|TH10|MCPWM CH1_P比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH11

无写保护的寄存器

地址:0x4001_0C0C

复位值:0x0

表14-8
MCPWM0_TH11配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH11||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH11|MCPWM CH1_N比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH20

无写保护的寄存器

地址:0x4001_0C10

复位值:0x0

表14-9
MCPWM0_TH20配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH20||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH20|MCPWM CH2_P比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH21

无写保护的寄存器

地址:0x4001_0C14

复位值:0x0

表14-10
MCPWM0_TH21配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH21||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH21|MCPWM CH2_N比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH30

无写保护的寄存器

地址:0x4001_0C18

复位值:0x0

表14-11 MCPWM0_TH30配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH30||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH30|MCPWM CH3_P比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TH31

无写保护的寄存器

地址:0x4001_0C1C

复位值:0x0

表14-12 MCPWM0_TH31配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TH31||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TH31|MCPWM CH3_N比较门限值，16位有符号数；发生更新事件时，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TMR0

无写保护的寄存器

地址:0x4001_0C30

复位值:0x7FFF

表14-13
MCPWM0_TMR0配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TMR0||||||||||||||||
|RW||||||||||||||||
|0x7FFF||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TMR0|ADC采样定时器比较门限0寄存器，16位有符号数；当MCPWM0_CNT0=TMR0时产生TADC\[0\]事件触发ADC进行采样。MCPWM发生更新事件后，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TMR1

无写保护的寄存器

地址:0x4001_0C34

复位值:0x7FFF

表14-14
MCPWM0_TMR1配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TMR1||||||||||||||||
|RW||||||||||||||||
|0x7FFF||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TMR1|ADC采样定时器比较门限1寄存器，16位有符号数；当MCPWM0_CNT=TMR1时产生TADC\[1\]事件触发ADC进行采样。MCPWM发生更新事件后，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TMR2

无写保护的寄存器

地址:0x4001_0C38

复位值:0x7FFF

表14-15
MCPWM0_TMR2配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TMR2||||||||||||||||
|RW||||||||||||||||
|0x7FFF||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TMR2|ADC采样定时器比较门限2寄存器，16位有符号数；发生更新事件后，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_TMR3

无写保护的寄存器

地址:0x4001_0C3C

复位值:0x7FFF

表14-16
MCPWM0_TMR3配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|TMR3||||||||||||||||
|RW||||||||||||||||
|0x7FFF||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|TMR3|ADC采样定时器比较门限3寄存器，16位有符号数；发生更新事件后，本寄存器加载到MCPWM实际运行系统中。。|

### MCPWM0_TH0

写保护的寄存器

地址:0x4001_0C40

复位值:0x0

表14-17
MCPWM0_TH0时基0寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||TH0|||||||||||||||
||RW|||||||||||||||
||0|||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:15\]||未使用|
|\[14:0\]|TH0|MCPWM时基0计数器门限值，15位无符号数，MCPWM实际运行系统中的时基0计数器从-TH计数到TH；发生更新事件后，本寄存器加载到MCPWM实际运行系统中。|

### MCPWM0_CNT0

无写保护的寄存器

地址:0x4001_0C48

复位值:0x8000

表14-18
MCPWM0_CNT0寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|CNT0||||||||||||||||
|RW||||||||||||||||
|0x8000||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|CNT0|向此寄存器写入，更改时基0计数器的设定值，发生更新事件后，本寄存器加载到MCPWM实际运行系统的时基0 CNT中。读出的数据为MCPWM实际运行系统中时基0计数器的值。实际读出的计数范围为-TH ~ +TH|

### MCPWM0_UPDATE

无写保护的寄存器

地址:0x4001_0C50

复位值:0x0

表14-19
MCPWM0_UPDATE MCPWM手动更新寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|31|30|29|28|27|26|25|24|23|22|21|20|19|18|17|16|
||||IO3_UPDATE|||TMR3_UPDATE|TMR2_UPDATE|||||||TH31_UPDATE|TH30_UPDATE|
||||WO|||WO|WO|||||||WO|WO|
||||0|||0|0|||||||0|0|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||||IO012_UPDATE|CNT0_UPDATE|TH0_UPDATE|TMR1_UPDATE|TMR0_UPDATE|||TH21_UPDATE|TH20_UPDATE|TH11_UPDATE|TH10_UPDATE|TH01_UPDATE|TH00_UPDATE|
||||WO|WO|WO|WO|WO|||WO|WO|WO|WO|WO|WO|
||||0|0|0|0|0|||0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:29\]||未使用|
|\[28\]|IO3_UPDATE|写1产生软件（手动）触发，将MCPWM0_IO3由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[27:26\]||未使用|
|\[25\]|TMR3_UPDATE|写1产生软件（手动）触发，将MCPWM0_TMR3由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[24\]|TMR2_UPDATE|写1产生软件（手动）触发，将MCPWM0_TMR2由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[23:18\]||未使用|
|\[17\]|TH31_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH31由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[16\]|TH30_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH30由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[15:13\]||未使用|
|\[12\]|IO012_UPDATE|写1产生软件（手动）触发，将MCPWM0_IO0/1/2由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[11\]|CNT0_UPDATE|写1产生软件（手动）触发，将MCPWM0_CNT0由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[10\]|TH0_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH0由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[9\]|TMR1_UPDATE|写1产生软件（手动）触发，将MCPWM0_TMR1由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[8\]|TMR0_UPDATE|写1产生软件（手动）触发，将MCPWM0_TMR0由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[7:6\]||未使用|
|\[5\]|TH21_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH21由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[4\]|TH20_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH20由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[3\]|TH11_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH11由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[2\]|TH10_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH10由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[1\]|TH01_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH01由预装载寄存器加载到MCPWM运行所使用的影子寄存器|
|\[0\]|TH00_UPDATE|写1产生软件（手动）触发，将MCPWM0_TH00由预装载寄存器加载到MCPWM运行所使用的影子寄存器|

向MCPWM0_UPDATE对应位写1
可以触发寄存器值从预装载寄存器写入影子寄存器，MCPWM0_UPDATE写入后自动清零，无需软件清零。每写1一次，进行一次软件/手动触发。向MCPWM0_UPDATE\[15:14\]会导致MCPWM0_CNT0/1被更新为预装载值，请留意是否需要更新CNT。

向MCPWM0_UPDATE写0不作用，不推荐写入0。

### MCPWM0_FCNT

无写保护的寄存器

地址:0x4001_0C54

复位值:0x0

表14-20
MCPWM0_FCNT寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|FCNT||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|FCNT|若MCPWM0_CH_FAIL\[15\]=1，当发生fail0/1事件时，记录MCPWM0_CNT0值，存入MCPWM0_FCNT|

### MCPWM0_EVT0

无写保护的寄存器

地址:0x4001_0C58

复位值:0x0

表14-21
MCPWM0_EVT0 MCPWM时基0外部触发寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|Res.|Res.|TIMER2_CMP1|TIMER2_CMP0|TIMER1_CMP1|TIMER1_CMP0|TIMER0_CMP1|TIMER0_CMP0|||||PWM0_TMR3|PWM0_TMR2|PWM0_TMR1|PWM0_TMR0|
|RW|RW|RW|RW|RW|RW|RW|RW|||||RW|RW|RW|RW|
|0|0|0|0|0|0|0|0|||||0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15\]|Reserved|保留位，必须为0|
|\[14\]|Reserved|保留位，必须为0|
|\[13\]|TIMER2_CMP1|TIMER2 CMP1事件触发时基0开始计数|
|\[12\]|TIMER2_CMP0|TIMER2 CMP0事件触发时基0开始计数|
|\[11\]|TIMER1_CMP1|TIMER1 CMP1事件触发时基0开始计数|
|\[10\]|TIMER1_CMP0|TIMER1 CMP0事件触发时基0开始计数|
|\[9\]|TIMER0_CMP1|TIMER0 CMP1事件触发时基0开始计数|
|\[8\]|TIMER0_CMP0|TIMER0 CMP0事件触发时基0开始计数|
|\[7:4\]||未使用|
|\[3\]|PWM0_TMR3|MCPWM0 TMR3事件触发时基0开始计数|
|\[2\]|PWM0_TMR2|MCPWM0 TMR2事件触发时基0开始计数|
|\[1\]|PWM0_TMR1|MCPWM0 TMR1事件触发时基0开始计数|
|\[0\]|PWM0_TMR0|MCPWM0 TMR0事件触发时基0开始计数|

### MCPWM0_DTH00

写保护的寄存器

地址:0x4001_0C60

复位值:0x0

表14-22 MCPWM0_DTH00配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||DTH00||||||||||
|||||||RW||||||||||
|||||||0||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:10\]||未使用|
|\[9:0\]|DTH00|MCPWM CH0/1/2 /3 P通道死区宽度控制寄存器，10bit无符号数|

### MCPWM0_DTH01

写保护的寄存器

地址:0x4001_0C64

复位值:0x0

表14-23 MCPWM0_DTH01配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||DTH01||||||||||
|||||||RW||||||||||
|||||||0||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:10\]||未使用|
|\[9:0\]|DTH01|MCPWM CH0/1/2/3 N通道死区宽度控制寄存器，10bit无符号数|

### MCPWM0_FLT

写保护的寄存器

地址:0x4001_0C70

复位值:0x0

表14-24
MCPWM0_FLT MCPWM滤波时钟分频寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||FLT_CLKDIV||||||||
|||||||||RW||||||||
|||||||||0||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||未使用|
|\[7:0\]|FLT_CLKDIV|滤波时钟分频寄存器，基于系统时钟分频，影响MCPWM0_CH_FAIL\[1:0\]。计算公式如下:系统时钟 / (FLT_CLKDIV + 1)。分频范围是1-256。|

MCPWM使用分频后的时钟对FAIL信号固定进行16周期的滤波。当使用256分频时，滤波宽度为4096个TCLK时钟宽度。

### MCPWM0_SDCFG

写保护的寄存器

地址:0x4001_0C74

复位值:0x0

表14-25
MCPWM0_SDCFG配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||||||||||TR0_AEC|TR0_T1_UPDATE|TR0_T0_UPDATE|TR0_UP_INTV||||
||||||||||RW|RW|RW|RW||||
||||||||||0|0|0|0||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:7\]||未使用|
|\[6\]|TR0_AEC|更新事件是否自动清除MCPWM0_EIF\[5:4\]并置位MCPWM0_CH012_FAIL.MOE，恢复MCPWM通道0/1/2信号输出。1:使能自动故障清除功能；0:关闭自动故障清除功能。|
|\[5\]|TR0_T1_UPDATE|时基0 t1（过零）事件更新使能。1:使能；0，关闭。|
|\[4\]|TR0_T0_UPDATE|时基0 t0（起点）事件更新使能。1:使能；0，关闭。|
|\[3:0\]|TR0_UP_INTV|时基0更新间隔。一旦t0和t1事件发生次数同TR0_UP_INTV相等，MCPWM系统自动触发MCPWM0_TH0，MCPWM0_TH00~TH21和MCPWM0_TMR寄存器加载到MCPWM运行系统的操作。若TR0_T1_UEN和TR0_T0_UEN均关闭，将不会触发此类型加载，只能手动触发加载。|

### MCPWM0_AUEN

写保护的寄存器

地址:0x4001_0C78

复位值:0x0303073F

表 14-26
MCPWM0_AUEN MCPWM自动更新使能寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|31|30|29|28|27|26|25|24|23|22|21|20|19|18|17|16|
||||IO3_AUPDATE|||TMR3_AUPDATE|TMR2_AUPDATE|||||||TH31_AUPDATE|TH30_AUPDATE|
||||RW|||RW|RW|||||||RW|RW|
||||0|||1|1|||||||1|1|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||||IO012_AUPDATE|CNT0_AUPDATE|TH0_AUPDATE|TMR1_AUPDATE|TMR0_AUPDATE|||TH21_AUPDATE|TH20_AUPDATE|TH11_AUPDATE|TH10_AUPDATE|TH01_AUPDATE|TH00_AUPDATE|
||||RW|RW|RW|RW|RW|||RW|RW|RW|RW|RW|RW|
||||0|0|1|1|1|||1|1|1|1|1|1|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:29\]||未使用|
|\[28\]|IO3_AUPDATE|MCWPM0_IO3自动加载使能。MCPWM0_IO3指的是MCPWM0_IO23中的Bit\[15:08\]，即MCPWM的通道3的基本配置。1：加载；0：不加载。|
|\[27:26\]||未使用|
|\[25\]|TMR3_AUPDATE|MCPWM0_TMR3自动加载使能。1:加载；0:不加载。|
|\[24\]|TMR2_AUPDATE|MCPWM0_TMR2自动加载使能。1:加载；0:不加载。|
|\[23:18\]||未使用|
|\[17\]|TH31_AUPDATE|MCPWM0_TH31自动加载使能。1:加载；0:不加载。|
|\[16\]|TH30_AUPDATE|MCPWM0_TH30自动加载使能。1:加载；0:不加载。|
|\[15:13\]||未使用|
|\[12\]|IO012_AUPDATE|MCPWM0_IO01/MCWPM0_IO2自动加载使能。MCPWM0_IO2指的是MCPWM0_IO23中的Bit\[7:0\],即MCPWM的通道2的基本配置。1:加载；0:不加载。|
|\[11\]|CNT0_AUPDATE|MCPWM0_CNT0自动加载使能。1:加载；0:不加载。|
|\[10\]|TH0_AUPDATE|MCPWM0_TH0自动加载使能。1:加载；0:不加载。|
|\[9\]|TMR1_AUPDATE|MCPWM0_TMR1自动加载使能。1:加载；0:不加载。|
|\[8\]|TMR0_AUPDATE|MCPWM0_TMR0自动加载使能。1:加载；0:不加载。|
|\[7:6\]||未使用|
|\[5\]|TH21_AUPDATE|MCPWM0_TH21自动加载使能。1:加载；0:不加载。|
|\[4\]|TH20_AUPDATE|MCPWM0_TH20自动加载使能。1:加载；0:不加载。|
|\[3\]|TH11_AUPDATE|MCPWM0_TH11自动加载使能。1:加载；0:不加载。|
|\[2\]|TH10_AUPDATE|MCPWM0_TH10自动加载使能。1:加载；0:不加载。|
|\[1\]|TH01_AUPDATE|MCPWM0_TH01自动加载使能。1:加载；0:不加载。|
|\[0\]|TH00_AUPDATE|MCPWM0_TH00自动加载使能。1:加载；0:不加载。|

注意MCPWM0_AUEN寄存器需要配合MCPWM0_SDCFG一起使用。例如当MCPWM0_AUEN中TH00_AUPDATE=1，MCPWM0_SDCFG中TR0_T1_UEN=1，那么当t1（过零）事件发生时MCPWM0_TH00的值会加载到MCPWM实际运行系统中。

### MCPWM0_TCLK

写保护的寄存器

地址:0x4001_077C

复位值:0x0

表14-27
MCPWM0_TCLK配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||CLK_DIV||||||EVT_CNT0_EN||BASE0_CNT_EN||||CLK_EN|||
||RW||||||RW||RW||||RW|||
||0||||||0||0||||0|||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:15\]||未使用|
|\[14:12\]|CLK_DIV|MCPWM工作时钟分频寄存器。0:系统时钟1:系统时钟/22:系统时钟/43:系统时钟/84:系统时钟/165:系统时钟/326:系统时钟/647:系统时钟/128|
|\[11:9\]||未使用|
|\[8\]|EVT_CNT0_EN|时基0外部触发使能|
|\[7\]||未使用|
|\[6\]|BASE0_CNT_EN|MCPWM时基0计数器使能开关。1:使能；0:关闭。|
|\[5:3\]||未使用|
|\[2\]|CLK_EN|MCPWM工作时钟使能。1:使能；0:关闭。这个时钟使能主要作用的时钟是用来控制FAIL信号，死区控制以及处理DMA搬运请求的。并不影响PWM影子寄存器的更新以及波形输出和MCPWM_CNT的更新。|
|\[1:0\]||未使用|

只有使能MCPWM0_TCLK.CLK_EN，才能完成影子寄存器更新。配置完成影子寄存器之后，同时开启MCPWM0_TCLK.BASE_CNT0_EN可以使得时基0开始计数。

当使用外部触发MCPWM开始计数时，需要配置BASE_CNTx_EN为0，EVT_THx_EN为1，同时设置MCPWM0_EVTx选择合适的外部触发源。待触发事件发生后，BASE_CNTx_EN会由硬件置1，MCPWM对应计数器开始计数。

### MCPWM0_IE0

写保护的寄存器

地址:0x4001_0C80

复位值:0x0

表14-28
MCPWM0_IE0 MCPWM时基0中断控制寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||UP_IE|TMR3_IE|TMR2_IE|TMR1_IE|TMR0_IE|TH31_IE|TH30_IE|TH21_IE|TH20_IE|TH11_IE|TH10_IE|TH01_IE|TH00_IE|T1_IE|T0_IE|
||RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|
||0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:15\]||未使用|
|\[14\]|UP_IE|时基0更新事件中断源使能。1，使能；0，关闭。|
|\[13\]|TMR3_IE|MCPWM0_CNT0等于MCPWM0_TMR3中断源使能。1，使能；0，关闭。|
|\[12\]|TMR2_IE|MCPWM0_CNT0等于MCPWM0_TMR2中断源使能。1，使能；0，关闭。|
|\[11\]|TMR1_IE|MCPWM0_CNT0等于MCPWM0_TMR1中断源使能。1，使能；0，关闭。|
|\[10\]|TMR0_IE|MCPWM0_CNT0等于MCPWM0_TMR0中断源使能。1，使能；0，关闭。|
|\[9\]|TH31_IE|MCPWM0_CNT0等于MCPWM0_TH31中断源使能。1，使能；0，关闭。|
|\[8\]|TH30_IE|MCPWM0_CNT0等于MCPWM0_TH30中断源使能。1，使能；0，关闭。|
|\[7\]|TH21_IE|MCPWM0_CNT0等于MCPWM0_TH21中断源使能。1，使能；0，关闭。|
|\[6\]|TH20_IE|MCPWM0_CNT0等于MCPWM0_TH20中断源使能。1，使能；0，关闭。|
|\[5\]|TH11_IE|MCPWM0_CNT0等于MCPWM0_TH11中断源使能。1，使能；0，关闭。|
|\[4\]|TH10_IE|MCPWM0_CNT0等于MCPWM0_TH10中断源使能。1，使能；0，关闭。|
|\[3\]|TH01_IE|MCPWM0_CNT0等于MCPWM0_TH01中断源使能。1，使能；0，关闭。|
|\[2\]|TH00_IE|MCPWM0_CNT0等于MCPWM0_TH00中断源使能。1，使能；0，关闭。|
|\[1\]|T1_IE|时基0 T1事件，MCPWM0_CNT0的计数值回0中断源使能。1，使能；0，关闭。|
|\[0\]|T0_IE|时基0 T0事件，MCPWM0_CNT0的计数值等于MCPWM0_TH0中断源使能。1，使能；0，关闭。|

### MCPWM0_IF0

无写保护的寄存器

地址:0x4001_0C84

复位值:0x0

表14-29
MCPWM0_IF0 MCPWM时基0中断标志寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
||UP_IF|TMR3_IF|TMR2_IF|TMR1_IF|TMR0_IF|||TH21_IF|TH20_IF|TH11_IF|TH10_IF|TH01_IF|TH00_IF|T1_IF|T0_IF|
||RW1C|RW1C|RW1C|RW1C|RW1C|||RW1C|RW1C|RW1C|RW1C|RW1C|RW1C|RW1C|RW1C|
||0|0|0|0|0|||0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:15\]||未使用|
|\[14\]|UP_IF|时基0更新事件MCPWM0_TH0/MCPWM0_TH00~MCPWM0_TH21/MCPWM0_TMR等寄存器更新到MCPWM实际运行系统的中断事件。1，发生；0，没发生。写1清零。|
|\[13\]|TMR3_IF|MCPWM0_CNT0等于MCPWM0_TMR3中断事件。1，发生；0，没发生。写1清零。|
|\[12\]|TMR2_IF|MCPWM0_CNT0等于MCPWM0_TMR2中断事件。1，发生；0，没发生。写1清零。|
|\[11\]|TMR1_IF|MCPWM0_CNT0等于MCPWM0_TMR1中断事件。1，发生；0，没发生。写1清零。|
|\[10\]|TMR0_IF|MCPWM0_CNT0等于MCPWM0_TMR0中断事件。1，发生；0，没发生。写1清零。|
|\[9:8\]||未使用|
|\[7\]|TH21_IF|MCPWM0_CNT0等于MCPWM0_TH21中断事件。1，发生；0，没发生。写1清零。|
|\[6\]|TH20_IF|MCPWM0_CNT0等于MCPWM0_TH20中断事件。1，发生；0，没发生。写1清零。|
|\[5\]|TH11_IF|MCPWM0_CNT0等于MCPWM0_TH11中断事件。1，发生；0，没发生。写1清零。|
|\[4\]|TH10_IF|MCPWM0_CNT0等于MCPWM0_TH10中断事件。1，发生；0，没发生。写1清零。|
|\[3\]|TH01_IF|MCPWM0_CNT0等于MCPWM0_TH01中断事件。1，发生；0，没发生。写1清零。|
|\[2\]|TH00_IF|MCPWM0_CNT0等于MCPWM0_TH00中断事件。1，发生；0，没发生。写1清零。|
|\[1\]|T1_IF|t1事件，MCPWM0_CNT0等于0中断事件。1，发生；0，没发生。写1清零。|
|\[0\]|T0_IF|t0事件，MCPWM0_CNT0等于MCPWM0_TH中断事件。1，发生；0，没发生。写1清零。|

当发生特定事件时，即使中断使能位IE=0，对应的IF仍会置位，但不会向处理器提起中断服务请求。

### MCPWM0_EIE

写保护的寄存器

地址:0x4001_0C90

复位值:0x0

表14-30
MCPWM0_EIE配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||||FAIL1_IE|FAIL0_IE|||||
|||||||||||RW|RW|||||
|||||||||||0|0|||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:6\]||未使用|
|\[5\]|FAIL1_IE|FAIL1中断源使能。1，使能；0，关闭。|
|\[4\]|FAIL0_IE|FAIL0中断源使能。1，使能；0，关闭。|
|\[3:0\]||未使用|

### MCPWM0_EIF

无写保护的寄存器

地址:0x4001_0C94

复位值:0x0

表14-31
MCPWM0_EIF配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||||FAIL1_IF|FAIL0_IF|||||
|||||||||||RW|RW|||||
|||||||||||0|0|||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:6\]||未使用|
|\[5\]|FAIL1_IF|FAIL1中断源事件。1，发生；0，没发生。写1清零。|
|\[4\]|FAIL0_IF|FAIL0中断源事件。1，发生；0，没发生。写1清零。|
|\[3:0\]||未使用|

### MCPWM0_RE

写保护的寄存器

地址:0x4001_0C98

复位值:0x0

表14-32
MCPWM0_RE配置寄存器

||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14||13||12||11||10||9||8||7|6|5|4|3|2|1|0|
|||TR0_T1_RE1||TR0_T0_RE1||TMR3_RE1||TMR2_RE1||TMR1_RE1||TMR0_RE1|||||TR0_T1_RE0|TR0_T0_RE0|TMR3_RE0|TMR2_RE0|TMR1_RE0|TMR0_RE0|
|||RW||RW||RW||RW||RW||RW|||||RW|RW|RW|RW|RW|RW|
|||0||0||0||0||0||0|||||0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:14\]||未使用|
|\[13\]|TR0_T1_RE1|时基0 T1事件DMA请求1使能。1:使能；0:关闭。|
|\[12\]|TR0_T0_RE1|时基0 T0事件DMA请求1使能。1:使能；0:关闭。|
|\[11\]|TMR3_RE1|MCPWM计数器命中TMR3，DMA请求1使能。1:使能；0:关闭。|
|\[10\]|TMR2_RE1|MCPWM计数器命中TMR2，DMA请求1使能。1:使能；0:关闭。|
|\[9\]|TMR1_RE1|MCPWM计数器命中TMR1，DMA请求1使能。1:使能；0:关闭。|
|\[8\]|TMR0_RE1|MCPWM计数器命中TMR0，DMA请求1使能。1:使能；0:关闭。|
|\[7:6\]||未使用|
|\[5\]|TR0_T1_RE0|时基0 T1事件DMA请求0使能。1:使能；0:关闭。|
|\[4\]|TR0_T0_RE0|时基0 T0事件DMA请求0使能。1:使能；0:关闭。|
|\[3\]|TMR3_RE0|MCPWM计数器命中TMR3，DMA请求0使能。1:使能；0:关闭。|
|\[2\]|TMR2_RE0|MCPWM计数器命中TMR2，DMA请求0使能。1:使能；0:关闭。|
|\[1\]|TMR1_RE0|MCPWM计数器命中TMR1，DMA请求0使能。1:使能；0:关闭。|
|\[0\]|TMR0_RE0|MCPWM计数器命中TMR0，DMA请求0使能。1:使能；0:关闭。|

MCPWM可以产生两个DMA请求信号。如果使能MCPWM0_RE寄存器中的RE0，且对应的事件标志置位，会产生DMA请求信号0；如果使能MCPWM0_RE寄存器中的RE1，且对应的事件标志置位，会产生DMA请求信号1。两个请求信号可以分别触发两个DMA通道进行搬运。

### MCPWM0_PP

写保护的寄存器

地址:0x4001_0C9C

复位值:0x0

表14-33
MCPWM0_PP配置寄存器

|||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|3|2|1|0|
|||||||||||IO3_PPE|IO2_PPE|IO1_PPE|IO0_PPE|
|||||||||||RW|RW|RW|RW|
|||||||||||0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:4\]||未使用|
|\[3\]|IO3_PPE|IO3推挽模式使能信号。写1，使能；写0，关闭。|
|\[2\]|IO2_PPE|IO2推挽模式使能信号。写1，使能；写0，关闭。|
|\[1\]|IO1_PPE|IO1推挽模式使能信号。写1，使能；写0，关闭。|
|\[0\]|IO0_PPE|IO0推挽模式使能信号。写1，使能；写0，关闭。|

推挽模式使能信号。根据工作模式不同而不同。边沿模式，开启边沿模式的推挽模式；中心对齐，开启中心对齐的推挽模式。

### MCPWM0_IO01

写保护的寄存器

地址:0x4001_0CA0

复位值:0x0

表14-34
MCPWM0_IO01配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|CH1_WM|CH1_PN_SW|CH1_SCTRLP|CH1_SCTRLN|CH1_PS|CH1_NS|CH1_PP|CH1_NP|CH0_WM|CH0_PN_SW|CH0_SCTRLP|CH0_SCTRLN|CH0_PS|CH0_NS|CH0_PP|CH0_NP|
|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|
|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15\]|CH1_WM|CH1工作模式选择。1:边沿模式；0:互补模式。|
|\[14\]|CH1_PN_SW|CH1的P和N通道输出互换选择。即P通道信号最后从N通道输出，N通道的信号最后从P通道输出。1:互换；0:不互换。|
|\[13\]|CH1_SCTRLP|当CH1_PS=1时，输出到CH1 P通道的值。|
|\[12\]|CH1_SCTRLN|当CH1_NS=1时，输出到CH1 N通道的值。|
|\[11\]|CH1_PS|CH1 P来源。1:来自CH1_SCTRLP；0:MCPWM内部计数器产生。|
|\[10\]|CH1_NS|CH1 N来源。1:来自CH1_SCTRLN；0:MCPWM内部计数器产生。|
|\[9\]|CH1_PP|CH1 P极性选择。1:CH1 P信号取反输出；0:CH1 P信号正常输出。|
|\[8\]|CH1_NP|CH1 N极性选择。1:CH1 N信号取反输出；0:CH1 N信号正常输出。|
|\[7\]|CH0_WM|CH0工作模式选择。1:边沿模式；0:互补模式。|
|\[6\]|CH0_PN_SW|CH0的P和N通道输出互换选择。即P通道信号最后从N通道输出，N通道的信号最后从P通道输出。1:互换；0:不互换。|
|\[5\]|CH0_SCTRLP|当CH0_PS =1时，输出到CH0 P通道的值。|
|\[4\]|CH0_SCTRLN|当CH0_NS =1时，输出到CH0 N通道的值。|
|\[3\]|CH0_PS|CH0 P来源。1:来自CH0_SCTRLP；0:MCPWM实际运行系统中计数器产生。|
|\[2\]|CH0_NS|CH0 N来源。1:来自CH0_SCTRLN；0:MCPWM实际运行系统中计数器产生。|
|\[1\]|CH0_PP|CH0 P极性选择。1:CH0 P信号取反输出；0:CH0 P信号正常输出。|
|\[0\]|CH0_NP|CH0 N极性选择。1:CH0 N信号取反输出；0:CH0 N信号正常输出。极性选择跟随通道交换，例如CH0 N选择取反输出，同时选择了通道交换，则交换后的CH0 N仍是取反输出。|

### MCPWM0_IO23

写保护的寄存器

地址:0x4001_0CA4

复位值:0x0

表14-35 MCPWM0_IO23配置寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|CH3_WM|CH3_PN_SW|CH3_SCTRLP|CH3_SCTRLN|CH3_PS|CH3_NS|CH3_PP|CH3_NP|CH2_WM|CH2_PN_SW|CH2_SCTRLP|CH2_SCTRLN|CH2_PS|CH2_NS|CH2_PP|CH2_NP|
|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|RW|
|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15\]|CH3_WM|CH3工作模式选择。1:Edge模式；0:互补模式。|
|\[14\]|CH3_PN_SW|CH3的P和N通道输出互换选择。即P通道信号最后从N通道输出，N通道的信号最后从P通道输出。1:互换；0:不互换。|
|\[13\]|CH3_SCTRLP|当CH3_PS =1时，输出到CH3 P通道的值。|
|\[12\]|CH3_SCTRLN|当CH3_NS =1时，输出到CH3 N通道的值。|
|\[11\]|CH3_PS|CH3 P来源。1:来自CH3_SCTRLP；0:MCPWM实际运行系统中计数器产生。|
|\[10\]|CH3_NS|CH3 N来源。1:来自CH3_SCTRLN；0:MCPWM实际运行系统中计数器产生。|
|\[9\]|CH3_PP|CH3 P极性选择。1:CH3 P信号取反输出；0:CH3 P信号正常输出。|
|\[8\]|CH3_NP|CH3 N极性选择。1:CH3 N信号取反输出；0:CH3 N信号正常输出。|
|\[7\]|CH2_WM|CH2工作模式选择。1:Edge模式；0:互补模式。|
|\[6\]|CH2_PN_SW|CH2的P和N通道输出互换选择。即P通道信号最后从N通道输出，N通道的信号最后从P通道输出。1:互换；0:不互换。|
|\[5\]|CH2_SCTRLP|当CH2_PS =1时，输出到CH2 P通道的值。|
|\[4\]|CH2_SCTRLN|当CH2_NS =1时，输出到CH2 N通道的值。|
|\[3\]|CH2_PS|CH2 P来源。1:来自CH2_SCTRLP；0:MCPWM实际运行系统中计数器产生。|
|\[2\]|CH2_NS|CH2 N来源。1:来自CH2_SCTRLN；0:MCPWM实际运行系统中计数器产生。|
|\[1\]|CH2_PP|CH2 P极性选择。1:CH2 P信号取反输出；0:CH2 P信号正常输出。|
|\[0\]|CH2_NP|CH2 N极性选择。1:CH2 N信号取反输出；0:CH2 N信号正常输出。极性选择跟随通道交换，例如CH0 N选择取反输出，同时选择了通道交换，则交换后的CH0 N仍是取反输出。|

### MCPWM0_CH_FAIL

写保护的寄存器

地址:0x4001_0CB0

复位值:0x0

表14-36
MCPWM0_CH_FAIL配置寄存器

||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15||14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|FAIL0_CAP|||||FAIL1_SEL||FAIL0_SEL||HALT_PRT|MOE|FAIL1_EN|FAIL0_EN|FAIL1_POL|FAIL0_POL|||
|RW|||||RW||RW||RW|RW|RW|RW|RW|RW|||
|0|||||0||0||0|0|0|0|0|0|||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15\]|FAIL0_CAP|当发生fail0/1事件时，将MCPWM0_CNT0值存入MCPWM0_FCNT|
|\[14:12\]||未使用|
|\[11:10\]|FAIL1_SEL|FAIL1来源选择0: MCPWM0_BKIN11: 比较器1原始输出2: CLUOUT23: CLUOUT3|
|\[9:8\]|FAIL0_SEL|FAIL0来源选择0: MCPWM0_BKIN01: 比较器0原始输出2: CLUOUT03: CLUOUT1|
|\[7\]|HALT_PRT|MCU进入HALT状态，MCPWM输出值选择。1:正常输出；0:强制MCPWM输出保护值。|
|\[6\]|MOE|MOE控制MCPWM通道P和N输出值。1:输出MCPWM产生的正常信号0:输出MCPWM0_CH_DEF设置的CHxN_DEFAULT和CHxP_DEFAULT默认值，此默认值不受极性/通道选择等控制。MCPWM0_EIF.FAIL1_IF和MCPWM0_EIF.FAIL0_IF任意一位变1将触发MOE变成0，输出默认值。|
|\[5\]|FAIL1_EN|FAIL1输入使能。1:使能；0:关闭。|
|\[4\]|FAIL0_EN|FAIL0输入使能。1:使能；0:关闭。|
|\[3\]|FAIL1_POL|FAIL1极性选择。1:信号极性取反输入，信号输入低为有效电平；0:信号极性正常输入，信号输入高为有效电平。|
|\[2\]|FAIL0_POL|FAIL0极性选择。1:信号极性取反输入，信号输入低为有效电平；0:信号极性正常输入，信号输入高为有效电平。|
|\[1:0\]||未使用|

FAIL0/1信号用于工作于时基0的MCPWM通道0/1/2/3。当FAIL0/1有效时，将暂停MCPWM时基0对应的计数器MCPWM0_CNT0，并产生对应的错误中断标志MCPWM0_EIF。

### MCPWM0_CH_DEF

写保护的寄存器

地址:0x4001_0CB8

复位值:0x0

表14-37
MCPWM0_CH_DEF短路保护通道输出值寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||CH3P_DEFAULT|CH3N_DEFAULT|CH2P_DEFAULT|CH2N_DEFAULT|CH1P_DEFAULT|CH1N_DEFAULT|CH0P_DEFAULT|CH0N_DEFAULT|
|||||||||RW|RW|RW|RW|RW|RW|RW|RW|
|||||||||0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||未使用|
|\[7\]|CH3P_DEFAULT|CH3 P通道默认值|
|\[6\]|CH3N_DEFAULT|CH3 N通道默认值。当发生FAIL事件或MOE为0时，相应通道输出默认电平。默认电平输出不受MCPWM0_IO23的 BIT0、BIT1、BIT8、BIT9、BIT6、BIT14通道交换和极性控制的影响，直接控制通道输出。|
|\[5\]|CH2P_DEFAULT|CH2_P通道默认值|
|\[4\]|CH2N_DEFAULT|CH2_N通道默认值|
|\[3\]|CH1P_DEFAULT|CH1_P通道默认值|
|\[2\]|CH1N_DEFAULT|CH1_N通道默认值|
|\[1\]|CH0P_DEFAULT|CH0_P通道默认值|
|\[0\]|CH0N_DEFAULT|CH0_N通道默认值。当发生FAIL事件或MOE为0时，相应通道输出默认电平。默认电平输出不受MCPWM0_IO01和MCPWM0_IO23的 BIT0、BIT1、BIT8、BIT9、BIT6、BIT14通道交换和极性控制的影响，直接控制通道输出。|

### MCPWM0_CH_MSK

写保护的寄存器

地址:0x4001_0CBC

复位值:0x00FF

表14-38 MCPWM0_CH_MSK通道屏蔽位寄存器

|||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7||6||5||4||3|2|1|0|
||||||||||CH3P_FAIL_EN||CH3N_FAIL_EN||CH2P_FAIL_EN||CH2N_FAIL_EN|CH1P_FAIL_EN|CH1N_FAIL_EN|CH0P_FAIL_EN|CH0N_FAIL_EN|
||||||||||RW||RW||RW||RW|RW|RW|RW|RW|
||||||||||1||1||1||1|1|1|1|1|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||未使用|
|\[7\]|CH3P_FAIL_EN|CH3_P 通道FAIL事件使能，高有效，默认开启|
|\[6\]|CH3N_FAIL_EN|CH3_N 通道FAIL事件使能，高有效，默认开启|
|\[5\]|CH2P_FAIL_EN|CH2_P 通道FAIL事件使能，高有效，默认开启|
|\[4\]|CH2N_FAIL_EN|CH2_N 通道FAIL事件使能，高有效，默认开启|
|\[3\]|CH1P_FAIL_EN|CH1_P 通道FAIL事件使能，高有效，默认开启|
|\[2\]|CH1N_FAIL_EN|CH1_N通道 FAIL事件使能，高有效，默认开启|
|\[1\]|CH0P_FAIL_EN|CH0_P 通道FAIL事件使能，高有效，默认开启|
|\[0\]|CH0N_FAIL_EN|CH0_N 通道FAIL事件使能，1:发生FAIL事件或MCPWM0_CH012_FAIL.MOE=0时，CH0_N通道电平输出为默认值，0:发生FAIL事件或MCPWM0_CH012_FAIL.MOE=0时，CH0_N通道电平不受影响，仍由MCPWM内部硬件控制。默认开启FAIL使能|

### MCPWM0_PRT

无写保护的寄存器

地址:0x4001_0CC0

复位值:0x0

表14-39
MCPWM0_PRT寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|PRT||||||||||||||||
|RW||||||||||||||||
|0||||||||||||||||

||||
|---|---|---|
|位置|位名称|说明|
|\[31:16\]||未使用|
|\[15:0\]|PRT|写入0xDEAD，解除MCPWM寄存器写保护；写入其它值，MCPWM寄存器进入写保护。此寄存器读出恒为0。|

### MCPWM0_SWAP

移动至GPIO模块中的PWM_SWAP寄存器。

### MCPWM0_SW_FAIL

写保护的寄存器

地址:0x4001_0CD0

复位值:0x0

表14-40 MCPWM0_SW_FAIL
MCPWM软件FAIL调试寄存器

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||||FAIL1_TE|FAIL0_TE|||FAIL1_TD|FAIL0_TD|
|||||||||||RW|RW|||RW|RW|
|||||||||||0|0|||0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:6\]||未使用|
|\[5\]|FAIL1_TE|FAIL1软件测试信号使能，高有效|
|\[4\]|FAIL0_TE|FAIL0软件测试信号使能，高有效|
|\[3:2\]||未使用|
|\[1\]|FAIL1_TD|FAIL1软件测试信号|
|\[0\]|FAIL0_TD|FAIL0软件测试信号|

当FAILx_TE=1时，对应的FAILx_TD与来自IO或比较器的硬件FAIL信号有相同作用，可以控制PWM停机。举例来说，当设置MCPWM0_CH_FAIL.FAIL0_EN=1（选择FAIL0信号作为通道停机控制信号），MCPWM0_CH_FAIL.FAIL0_POL=1（FAIL信号低电平有效），MCPWM0_SW_FAIL.FAIL0_TE=1（使能软件FAIL0测试功能）。当MCPWM0_SW_FAIL.FAIL0_TD=0时，MCPWM关闭通道的输出，持续输出通道短路时的默认值；当MCPWM0_SW_FAIL.FAIL0_TD=1时，则由来自硬件的FAIL信号来控制PWM的通道是否正常输出。

软件FAIL信号与硬件FAIL信号经过相同的PWM逻辑，包括极性选择、使能、滤波。

一旦软件使能FAILx_TE，且FAILx_TD为有效电平，则MCPMW_SDCFG.MOE无法置1，PWM通道也只能输出通道默认值，可用于软件立即关断PWM通道。

