第6.1节 增强型脉宽调制器(ePWM)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章DSP片上控制与采样外设
6.1 增强型脉宽调制器(ePWM)
6.1.1 ePWM模块概述
•增强型脉冲宽度调制器(ePWM)
•ePWM模块中每个完整的PWM通道都是由两个PWM输出组成,即ePWMxA和ePWMxB
•有时为了能够更精确控制PWM输出,加入了硬件扩展模块—高精度脉冲宽度调制器(HRPWM)
•当多个ePWM模块集成在一个器件内时,如图:
每个ePWM模块都具有以下特征:
●周期和频率可控的16位时间基准计数器。
●两个PWM输出(EPWMxA,EPWMxB),可以配置成以下工作方式:两个
独立的带有单个边沿操作的PWM输出、两个独立的带有双边沿对称操作的PWM输出、一个独立的带有双边沿非对称操作的PWM输出。
●通过软件可实现PWM信号的异步越权控制。
●可编程的相位控制,以支持相对其它ePWM模块的相位滞后或超前操
作。
●逐周期的硬件上相位同步。
●独立的上升沿和下降沿死区延时控制。
●可编程错误区域分配,用于故障时的逐周期控制和单次控制。
●所有事件都可以触发CPU中断以及ADC启动转换(SOC)。
●事件可预定标,减小CPU频繁响应中断的负担。
●循环周期性的硬件锁定(同步)相位关系。
●错误条件可强制PWM输出为高、低以及高阻状态。
●高频载波信号实现PWM斩波,对于脉冲变压器门极驱动非常有用。
ePWM子模块概述
•ePWM模块主要包含以下7部分:时间基准子模块;计数比较子模块;动作限定子模块;死区控制子模块;PWM斩波子模块;错误区域控制子模块和事件触发子模块。
•每个ePWM模块都是由7个子模块组成,并且系统内通过信号进行连接,如图:
ePWM模块内部结构如图:
ePWM模块的主要信号模块如下:
•PWM输出信号(ePWMxA和ePWMxB)•错误区域信号(TZ1-TZ6)
•时间基准同步输入和输出信号
•ADC启动信号
•外设总线
1. 时间基准子模块(TB)
每个ePWM都有自己的时间基准模块,它用来决定ePWM 的事件时序。通过同步逻辑信号,可以实现多个ePWM模块以相同时间基准进行工作。图为ePWM模块的时间基准子模块的关系图。
(1)时间基准子模块的用途
用户可以通过配置时间基准子模块实现以下功能:
①指定ePWM时间基准计数器(TBCTR)的频率值或周期值以控制事件发生的频率。
②与其它ePWM模块的时间基准同步。
③维持与其它ePWM模块间的相位关系。
⑤设置时间基准计数器为增、减或增减计数模式。
⑥产生以下事件:
●CTR=PRD:时间基准计数器值等于指定的周期值
(TBCTR=TBPRD);
●CTR=ZERO:时间基准计数器等于零(TBCTR = 0x0000)。
⑦配置时间基准的时钟率,即对CPU系统时钟(SYSCLKOUT)的预定标。
时间基准模块的关键信号和寄存器
与时间基准子模块相关联的关键信号
信号描述ePWMMxSYNCI 时间基准同步信号输入ePWMMxSYNCO 时间基准同步信号输出
CTR=PRD 时间基准计数器等于指定周期CTR=Zero时间基准计数器等于零
CTR=CMPB 时间基准计数器等于计数寄存器CTR_dir时间基准计数方向
CTR_max时间基准计数器等于最大值TBCLK时间基准时钟
计数PWM周期与频率
时间基准周期寄存器(TBPRD)和时间基准计数器共同控制PWM的频率,当TBPRD=4时周期和频率与计数器递增、递减以及递增递减时的关系。系统时钟(SYSCLKOUT)的预定标处理将得到时间基准时钟(TBCLK),由该时钟决定每次时间递增的步骤。
时间基准计数器有三种操作模式,可通过时间基准计数寄存器(TBCTL)选择:
(1)递增计数模块
时间基准计数器从周期值,当达到周期值,时间基准计数器复位置零,此时再重新开始递增计数,重复运行。
(2)递减计数模式
时间基准计数器从周期值递减到零,当达到零值时,时间基准计数器重置周期值,此时再重新递减重复运行。
(3)递增递减计数模式
时间基准计数器从零递增到周期值,当达到周期值,时间基准计数器开始递减直至零,此时再递增重复运行。
时间基准周期映射寄存器
(1)当前工作寄存器(active register)。(2)映射寄存器(shadow register)。(3)时间基准周期映射模式。
(4)时间基准周期立即装载模式。
6.1.2 ePWM子模块功能
2.计数比较子模块
计数比较子模块将时间基准计数器的计数值不断地同计数比较器A(CMPA)和计数比较器B(CMPB)寄存器做比较,当时间基准计数器等于其中一个比较寄存器的值时,计数比较单元产生相应的事件。
①使用可编程的CMPA和CMPB寄存器产生相应比较事件:
CTR=CMPA,时间基准计数器等于计数比较寄存器A (TBCTR=CMPA)。
CTR=CMPB,时间基准计数器等于计数比较寄存器B (TBCTR=CMPB)。
②若对动作限定子模块进行了相关配置,可控制PWM的占空比。
③映射新的比较值,防止在当前的PWM周期中产生冲突。
计数比较子模块基本结构
1.计数比较子模块的应用
(1)两位独立的比较事件
CTR=CMPA:时间基准计数器等于有效计数比较器A的值CTR=CMPB:时间基准计数器等于有效计数比较器B的值(2)两种工作模式
映射模式
立即装载模式
2.计数模式时序波形
计数比较子模块产生比较事件有以下三种模式:
•增计数模式:用于产生不对称的PWM脉冲波形。
•减计数模式:用于产生不对称的PWM脉冲波形。
•增减计数模式:用于产生对称的PWM脉冲波形。