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

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

# SPI

## 概述

SPI接口主要使用在，外部设计采用SPI协议的应用场景下。SPI的工作模式软件可选，默认为SPI
Motorola模式。SPI接口支持全双工传输和半双工传输。当接口配置为Master模式时，可发送时钟信号供外部Slave设备使用。

## 主要特性

- 支持Master和Slave操作
- 全双工传输，可根据应用情况，使用3根或者4根信号线
- 支持半双工传输，可根据应用情况，使用2根信号线
- 可编程的时钟极性和相位
- 可编程的数据顺序：MSB或LSB
- 最快传输速度为系统最高时钟频率的1/8
- 片选信号均可选。Master模式下，片选信号可以软件控制也可以硬件产生；Slave模式下，片选信号可以恒定有效，也可以来自外界设备
- 无本地FIFO，支持DMA操作。包含溢出检测和片选信号异常检测

## 功能描述

### 功能框图

本接口采用同步串行设计，实现CPU同外部设备之间的SPI传输。支持轮询和中断方式获得传输状态信息。本接口的主要功能模块如下图所示。

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

图17-1 SPI模块结构框图

接口信号包括，spi_din，spi_dout，sclk_in，sclk_out，ss_in和ss_out。

spi_din：接口接收的数据信号。同SPI协议比较，当接口配置为Master模式时，其等效为MISO；当接口配置为Slave模式时，其等效为MOSI。

spi_dout：接口发送的数据信号。同SPI协议比较，当接口配置为Master模式时，其等效为MOSI；当接口配置为Slave模式时，其等效为MISO。

sclk_in：接口接收的时钟信号。此时，接口的工作模式为Slave。非Slave模式下，此信号输入无效。

sclk_out：接口发送的时钟信号。此时，接口的工作模式为Master，非Master模式下，此信号输出恒定为0。

ss_in：接口接收的片选信号。此时，接口的工作模式为Slave。非Slave模式下，此信号输入无效。

ss_out：接口发送的片选信号。此时，接口的工作模式为Master。非Master模式下，此信号输出恒定为1。

### 功能说明

#### 全双工模式

默认情况下，SPI接口配置为全双工模式。此时，数据传输需要两根数据线。数据信号的变化，发生在时钟信号的边沿，即同步于时钟信号。

接口为Master模式时：

- spi_din为数据输入，接外部Slave设备的MISO
- spi_dout为数据输出，接外部Slave设备的MOSI
- spi_ss_out为片选信号，根据应用情况选择是使用该信号还是软件控制其它GPIO实现

接口为Slave模式时：

- spi_din为数据输入，接外部Master设备的MOSI
- spi_dout为数据输出，接外部Master设备的MISO
- spi_ss_in为片选信号，根据应用情况是使用该信号还是片选恒有效

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

图17-2 SPI接口全双工模式互连框图

从上图可知，GPIO若配置为输出，则SPI接口可发送数据；GPIO若配置为输入，则SPI接口可接收数据。亦即SPI_DI关闭GPIO输入使能且开启GPIO输出使能时，即可作为SPI_DO使用，SPI_DO关闭GPIO输出使能且开启GPIO输入使能时，即可作为SPI_DI使用。

#### 半双工模式

SPI接口可配置为半双工模式。此时，数据传输只需要一根数据线。数据信号的变化，发生在时钟信号的边沿，即同步于时钟信号。一次传输只能是一个方向的，要不就是发送，要不就是接收。

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

图17-3 SPI接口半双工模式互连框图

注意，上图中若本接口做Master，则clk为本接口的输出信号；若本接口做Slave，则clk为本接口的输入信号。

仅发送

CFG\[7:6\]配置为2，半双工发送模式有效。此时，本接口只能发送数据。GPIO_0的oe使能，发送spi_dout数据到外界；GPIO_0的ie关闭，spi_din恒定输入为0。此模式下，支持DMA传输、支持Master/Slave模式下的发送。

仅接收

CFG\[7:6\]配置为3，半双工接收模式有效。此时，本接口只能接收数据。GPIO_0的oe关闭，spi_dout无法发送数据到外界；GPIO_0的ie开启，spi_din接收来自外部的数据。此模式下，支持DMA传输、支持Master/Slave模式下的接收。

注意，全双工下是两个GPIO用于数据传输，半双工下可从中任意选一个GPIO用于数据传输。

#### 片选信号

本接口做Slave模式时，片选信号可选，CFG\[5\]决定片选来源。ss为Master设备发出的选通使能信号，低电平有效。

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

图17-4 SPI模块Slave模式片选信号选择

本接口做Master模式时，片选信号亦可选。模块硬件产生了标准的片选信号，实际应用可屏蔽此信号通过软件操作额外的GPIO实现。

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

图17-5 SPI模块Master模式片选信号选择

注意，图14-5虚线仅表示不确定。若使用spi_ss_out为ss的源头，那么将GPIO_0同外界设备互连；若使用软件操作GPIO的方式，那么可将GPIO_1同外界设备互连。

#### 通讯格式

在SPI通讯过程中，发送或者接收操作均是基于SPI时钟的。通讯格式受到CFG\[3:2\]控制。CFG\[3\]为Phase控制位，CFG\[2\]为Polarity控制位。

Polarity控制了SPI时钟信号在默认情况下的电平状态。Polarity为0时，默认时钟电平为低电平；Polarity为1时，默认电平为高电平。

Phase控制了SPI数据的发送/接收时刻。Phase为0时，时钟从默认电平到第一个跳变边沿为采样数据时刻，Phase为1时，时钟从默认电平到第一个跳变边沿为发送数据时刻。

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

图 17-6 SPI 通讯信号极性相位(Polarity=0,
Phase=0)

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

图 17-7 SPI 通讯信号极性相位(Polarity=0,
Phase=1)

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

图 17-8 SPI 通讯信号极性相位(Polarity=1,
Phase=0)

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

图 17-9 SPI 通讯信号极性相位(Polarity=1,
Phase=1)

#### 数据格式

SPI数据传输格式分成两种：MSB和LSB。数据传输格式受到CFG\[1\]控制。注意，在数据传输过程中硬件自动实现传输格式的转换，无需软件转换。

#### DMA传输

在大容量数据传输应用下，SPI接口支持DMA传输，减轻CPU的负担。一次传输，最大传输量为255字节，最小传输量为1字节。在全双工模式下，接收和发送均可实现DMA传输；在半双工模式下，仅接收或发送实现DMA传输。

在接收到新的数据后，硬件自动产生DMA请求，通过DMA模块将数据搬移到RAM中。在发送新数据前，硬件自动产生DMA请求，通过DMA模块将数据从RAM中搬移到SPI接口。因SPI无FIFO，SPI发送一次DMA请求，DMA只能搬移一个字节数据。**若要实现多字节搬移，DMA需配置为多轮搬移，每一轮搬移一个字节的方式**。

DMA传输需要配置DMA模块相应寄存器。

因SPI接口支持DMA传输，也支持CPU传输。两者区别在于--DMA传输，发送的数据来自DMA的搬移；CPU传输，发送的数据来自CPU的搬移。

DMA传输，推荐软件配置流程如下：

- 初始化DMA模块，将本次发送的数据来源，接收的数据去向配置好，传输长度配置完毕。
- 初始化GPIO模块，将SPI复用的GPIO配置完毕。
- 初始化SPI接口，IE/CFG/BAUD/SIZE等寄存器配置完毕。
- 触发SPI接口，进入发送/接收状态。触发条件是CPU对TX_DATA寄存器执行写操作，因最终发送的数据来自DMA，本次CPU写入的数据不会混入SPI发送流程。

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

图 17-10 SPI DMA 数据流与握手逻辑框图

#### CPU传输

CPU传输，一次只能发送/接收1个字节，每次完成后需要通过中断或者轮询的方式判断传输是否完成。

SPI接口支持DMA传输，也支持CPU传输。CPU传输，SPI接口无需触发发送状态，只要CPU将数据搬移到SPI接口，就可开始发送数据到外界。

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

图 17-11 SPI CPU 传输数据流框图

CPU传输，推荐软件配置流程如下：

- 初始化GPIO模块，将SPI复用的GPIO配置完毕。
- 初始化SPI接口，IE/CFG/BAUD/SIZE等寄存器配置完毕。注意SIZE只能配置为1。
- CPU对TX_DATA寄存器执行写操作，触发SPI接口进入发送流程，发送的数据来自CPU对TX_DATA写入值。

**注意：若需要连续发送，则需要重新配置SIZE和TX_DATA寄存器。<sup><a href="#footnote-0" id="footnote-ref-0">[1]</a></sup>**

**【图片已删除】**图
17-12 软件配置流程图

#### 外部事件传输

在大容量数据传输应用下，SPI接口支持DMA传输。传输过程中，可被打断也可不被打断。所谓打断是指，当前字节传输完成，需等待外部事件才开始下一个字节的传输；不打断是指，当前字节传输完成，直接下一个字节的传输。打断模式需要同其它模块配合使用。例如定时器模块，定时器可触发下一字节的传输。打断模式仅在Master模式有效。IE\[3\]控制了是否使用打断模式。

#### 中断处理

SPI接口包含三种类型的中断事件，分别是：数据传输完成事件，异常事件和溢出事件。

- 数据完成事件，当前数据传输完成。高电平有效，对IE\[0\]写1清除。
- 异常事件，SPI接口为Slave模式，若在传输过程中片选信号受到干扰，被拉高，将产生片选异常事件。高电平有效，对IE\[1\]写1清除。
- 溢出事件，数据没有及时通过DMA返回RAM，或者从RAM获得数据，将产生溢出事件。高电平有效，对IE\[2\]写1清除。

上述事件，默认是不触发SPI中断，可以通过配置IE\[6:4\]使能事件产生中断。

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

图17-13 SPI模块中断选信号产生图

数据传输完毕后，可通过DMA中断或者SPI自身中断判断结束。

- 发送模式下，DMA先完成搬移操作，SPI后发送完毕。SPI发送完毕，可作为本次传输完成标识。
- 接收模式下，SPI接收完毕，触发DMA搬移。DMA搬移完成，可作为本次传输完成标识。

溢出事件。在全双工模式下，发送和接收的DMA均有效，一般情况下不会发送溢出事件；在半双工模式下，只有发送（或接收），此时硬件屏蔽了接收（或发送）的溢出判断。

#### 波特率设置

SPI接口时钟通过对系统时钟分频获得，分频系数来自BAUD\[5:0\]。分频范围是1
～128，对应的BAUD\[5:0\]的值为0 ～63。

SPI协议为半拍协议，上升沿发送数据，下降沿采集数据；或者下降沿发送数据，上升沿采用数据。

SPI接口采用同步设计，需要对外部设备的信号进行同步采样，同步时钟为系统时钟。数据和时钟信号（此时为Slave模式）的同步，需要两拍系统时钟。考虑到时钟相位的偏移，此时需要一拍系统时钟的冗余，由此推导出最快的BAUD率为系统时钟的1/8，高电平周期为四拍系统时钟，低电平周期为四拍系统时钟。

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

图18-1
BEMFx_MID信号

此模块的信号处理时钟由系统主时钟分频得到。模拟比较器未经滤波的原始输出值，可以通过读取寄存器SYS_AFE_CMP值获得，同时也可以通过配置GPIO的第二功能通过P0.14和P2.3送出，具体GPIO第二功能配置及引进位置，请参考器件datasheet。

推荐配置流程：

- 1.  配置CMP的模拟开关

芯片上电的默认状态下，比较器模块是关闭的，通过配置寄存器SYS_AFE_REG5.CMPxPDN可以打开比较器（x=0/1，代表CMP0/CMP1两个比较器）。开启比较器之前，需要先开启BGP模块。

- 1.  配置CMP的数字时钟开关、时钟滤波和信号输入开关

通过配置寄存器CMP_TCLK.CLK_EN可以打开CMP的数字时钟开关，1表示打开，0表示关闭；通过配置寄存器[CMP_TCLK.FIL_CLK_DIV16\[7:4\]](#_CMP_TCLK)可以配置滤波时钟，数值设置范围是0~15，0表示1分频滤波，15表示16分频滤波；通过配置寄存器CMP_CFG.CMPx_IN_EN可以打开信号输入开关，1表示打开，0表示关闭。

- 1.  配置CMP的比较速度和迟滞电压

比较器的比较延时可通过配置寄存器[SYS_AFE_REG1.IT_CM\[1:0\]](#_SYS_AFE_REG1_模拟配置寄存器1_1)设置为0.15uS/0.6uS。迟滞电压可通过配置寄存器SYS_AFE_REG3.CMP_HYS设置为20mV/0mV。

- 1.  选择CMP的正负端信号来源

CMP的正端信号有8种信号来源可选择，可以通过配置寄存器[SYS_AFE_REG3.CMPx_SELP\[2:0\]](#_SYS_AFE_REG3_模拟配置寄存器3_1)进行设置，负端有4种信号来源可选择，可以通过配置寄存器[SYS_AFE_REG3.CMPx_SELN\[1:0\]](#_SYS_AFE_REG3_模拟配置寄存器3_1)进行设置。

- 1.  配置CMP的中断

通过配置寄存器CMP_IE.CMPx_IE可以打开CMP中断，1表示打开，0表示关闭。

## 寄存器

### 地址分配

CMP模块所涉及的寄存器包括两部分，一是18.1中提到的模拟配置寄存器，二是CMP_IE等CMP模块寄存器。

CMP模块寄存器的基地址是0x4001_0C00，寄存器列表如下:

表18-1比较器模块寄存器列表

||||
|---|---|---|
|名称|偏移地址|说明|
|CMP_IE|0x00|比较器中断使能寄存器|
|CMP_IF|0x04|比较器中断标志寄存器|
|CMP_TCLK|0x08|比较器分频时钟控制寄存器|
|CMP_CFG|0x0C|比较器控制寄存器|
|CMP_BLCWIN|0x10|比较器开窗控制寄存器|

### CMP模块寄存器描述

#### CMP_IE

地址：0x4001_0C00

复位值：0x0

表18-2比较器中断使能寄存器CMP_IE

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

||||
|---|---|---|
|位置|位名称|说明|
|\[31:2\]||未使用|
|\[1\]|CMP1_IE|比较器1中断使能，高有效|
|\[0\]|CMP0_IE|比较器0中断使能，高有效|

#### CMP_IF

地址：0x4001_0C04

复位值：0x0

表18-3比较器中断标志寄存器CMP_IF

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||||||||CMP1_IF|CMP0_IF|
|||||||||||||||RW1C|RW1C|
|||||||||||||||0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:2\]||未使用|
|\[1\]|CMP1_IF|比较器1中断标志，高有效，写1清零|
|\[0\]|CMP0_IF|比较器0中断标志，高有效，写1清零|

#### CMP_TCLK

地址：0x4001_0C08

复位值：0x0

表18-4比较器分频时钟控制寄存器CMP_TCLK

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

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||未使用|
|\[7:4\]|FIL_CLK_DIV16|比较器滤波时钟分频，基于MCLK进行1~16分频，影响进入比较器中断的时间|
|\[3\]|CLK_EN|时钟使能，高有效|
|\[2\]||未使用|
|\[1:0\]|FIL_CLK_DIV1248|比较器滤波时钟分频，2’b00:1分频, 2’b01:2分频, 2’b10:4分频, 2’b11:8分频|

CMP滤波时钟频率

Freq(CMP_Filter) =
Freq(MCLK)/2<sup>CMP_TCLK.FIL_CLK_DIV1248</sup>/(CMP_TCLK.FIL_CLK_DIV16+1)，其中MCLK为系统的主时钟，通常为96MHz全速时钟。需要注意的是，产生CMP滤波时钟需要使能CMP_TCLK.CLK_EN位。

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

图 18-2 比较器滤波时钟产生

CMP模块使用此滤波时钟对模拟比较器的输出信号进行16时钟周期长的滤波，即只有信号稳定时间超过16个滤波时钟周期才能通过滤波器，CMP模块输出的滤波后的信号才会发生变化，如果输入信号稳定时间不足16个滤波时钟周期即发生变化，则CMP模块输出的滤波后的信号维持原值不变。**即滤波宽度=滤波时钟周期\*16**.

#### CMP_CFG

地址：0x4001_0C0C

复位值：0x0

表18-5比较器控制寄存器CMP_CFG

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||CMP1_W_PWM_POL|CMP1_IRQ_TRIG|CMP1_IN_EN|CMP1_POL|CMP0_W_PWM_POL|CMP0_IRQ_TRIG|CMP0_IN_EN|CMP0_POL|
|||||||||RW|RW|RW|RW|RW|RW|RW|RW|
|||||||||0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||未使用|
|\[7\]|CMP1_W_PWM_POL|比较器1开窗PWM信号极性选择，在CMP_BLCWIN使能情况下使用|
|\[6\]|CMP1_IRQ_TRIG|比较器1中断触发类型，0:电平触发，1:边沿触发|
|\[5\]|CMP1_IN_EN|比较器1信号输入使能|
|\[4\]|CMP1_POL|比较器1极性选择，0:高电平有效；1:低电平有效|
|\[3\]|CMP0_W_PWM_POL|比较器0开窗PWM信号极性选择，在CMP_BLCWIN使能情况下使用|
|\[2\]|CMP0_IRQ_TRIG|比较器0中断触发类型，0:电平触发，1:边沿触发|
|\[1\]|CMP0_IN_EN|比较器0信号输入使能|
|\[0\]|CMP0_POL|比较器0极性选择，0:高电平有效；1:低电平有效|

比较器的极性及使能控制如图 18-3所示。

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

图 18-3
比较器控制及中断产生逻辑

比较器模块与MCPWM模块可以联合动作，其中MCPWM模块的P管控制信号可以作为比较器开窗的控制信号。但比较器自身的中断信号产生于开窗控制无关，仅仅受CMP_CFG寄存器影响。

MCPWM的fail信号可以来自GPIO，也可以来自比较器模块，使用MCPWM_FAIL寄存器进行控制。如果MCPWM的fail信号来自比较器，则是经过比较器模块内部的开窗控制的。fail信号进入MCPWM后也会进行极性使能以及滤波等处理，与比较器模块类似但完全独立，由MCPWM内部的寄存器进行控制。MCPWM内部与fail相关的错误中断信号产生收到MCPWM内部有关极性使能滤波控制寄存器的影响。具体请参考MCPWM章节。

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

图 18-4 CMP与MCPWM的联动

对于比较器的开窗功能，若CMP_CFG.CMP0_PWM_POL=1，则在对应MCPWM
CHNx_P信号为1时，比较器0可以产生比较信号输出，其他时刻比较信号为0；反之，若CMP_CFG.CMP0_PWM_POL=0，则在对应MCPWM
CHNx_P信号为0时，比较器0可以产生比较信号输出，其他时刻比较信号为0。比较器1的开窗控制信号极性由CMP_CFG.CMP1_PWM_POL位进行控制，逻辑相同。

注意：CMP_CFG. CMP0_W_PWM_POL和CMP_CFG.
CMP1_W_PWM_POL同时会影响送入MCPWM模块作为FAIL信号的比较器信号，如图18-5所示。来自比较器的MCPWM
FAIL信号为模拟比较器输出的原始信号，未经过比较器数字接口模块的滤波处理，但是可以被MCPWM的通道信号进行开窗控制，开窗控制设置见比较器数字接口模块。FAIL信号进入MCPWM模块后，可以通过设置MCPWM_TCLK进行滤波。

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

图18-5
比较器开窗功能图示

#### CMP_BLCWIN

地址：0x4001_0C10

复位值：0x0

表18-6比较器开窗控制寄存器CMP\_ BLCWIN

|||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|15|14|13|12|11|10|9|8|7|6|5|4|3|2|1|0|
|||||||||CMP1_CHN3P_WIN_EN|CMP1_CHN2P_WIN_EN|CMP1_CHN1P_WIN_EN|CMP1_CHN0P_WIN_EN|CMP0_CHN3P_WIN_EN|CMP0_CHN2P_WIN_EN|CMP0_CHN1P_WIN_EN|CMP0_CHN0P_WIN_EN|
|||||||||RW|RW|RW|RW|RW|RW|RW|RW|
|||||||||0|0|0|0|0|0|0|0|

||||
|---|---|---|
|位置|位名称|说明|
|\[31:8\]||保留|
|\[7\]|CMP1_CHN3P_WIN_EN|使用MCPWM模块CHN3_P通道输出的P管开关控制信号作为比较器1开窗使能|
|\[6\]|CMP1_CHN2P_WIN_EN|使用MCPWM模块CHN2_P通道输出的P管开关控制信号作为比较器1开窗使能|
|\[5\]|CMP1_CHN1P_WIN_EN|使用MCPWM模块CHN1_P通道输出的P管开关控制信号作为比较器1开窗使能|
|\[4\]|CMP1_CHN0P_WIN_EN|使用MCPWM模块CHN0_P通道输出的P管开关控制信号作为比较器1开窗使能|
|\[3\]|CMP0_CHN3P_WIN_EN|使用MCPWM模块CHN3_P通道输出的P管开关控制信号作为比较器0开窗使能|
|\[2\]|CMP0_CHN2P_WIN_EN|使用MCPWM模块CHN2_P通道输出的P管开关控制信号作为比较器0开窗使能|
|\[1\]|CMP0_CHN1P_WIN_EN|使用MCPWM模块CHN1_P通道输出的P管开关控制信号作为比较器0开窗使能|
|\[0\]|CMP0_CHN0P_WIN_EN|使用MCPWM模块CHN0_P通道输出的P管开关控制信号作为比较器0开窗使能|

通常CMP\_ BLCWIN\[3:0\]或CMP\_
BLCWIN\[7:4\]中有1bit为1，表明使用对应的CHNx_P对比较器0/1的信号产生进行控制。如果CMP\_
BLCWIN\[3:0\]或CMP\_
BLCWIN\[7:4\]为4’b0000，则表示比较器0/1比较信号的产生与PWM信号无关。

