第6.1节 增强型脉宽调制器(ePWM)_第1页
第6.1节 增强型脉宽调制器(ePWM)_第2页
第6.1节 增强型脉宽调制器(ePWM)_第3页
第6.1节 增强型脉宽调制器(ePWM)_第4页
第6.1节 增强型脉宽调制器(ePWM)_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章DSP片上控制与采样外设6.1增强型脉宽调制器(ePWM)6.1.1ePWM模块概述增强型脉冲宽度调制器(ePWM)ePWM模块中每个完整的PWM通道都是由两个PWM输出组成,即ePWMxA和ePWMxB有时为了能够更精确控制PWM输出,加入了硬件扩展模块—高精度脉冲宽度调制器(HRPWM)当多个ePWM模块集成在一个器件内时,如图:6.1增强型脉宽调制器(ePWM)6.1增强型脉宽调制器(ePWM)6.1增强型脉宽调制器(ePWM)每个ePWM模块都具有以下特征:周期和频率可控的16位时间基准计数器。两个PWM输出(EPWMxA,EPWMxB),可以配置成以下工作方式:两个独立的带有单个边沿操作的PWM输出、两个独立的带有双边沿对称操作的PWM输出、一个独立的带有双边沿非对称操作的PWM输出。通过软件可实现PWM信号的异步越权控制。可编程的相位控制,以支持相对其它ePWM模块的相位滞后或超前操作。逐周期的硬件上相位同步。独立的上升沿和下降沿死区延时控制。可编程错误区域分配,用于故障时的逐周期控制和单次控制。所有事件都可以触发CPU中断以及ADC启动转换(SOC)。事件可预定标,减小CPU频繁响应中断的负担。循环周期性的硬件锁定(同步)相位关系。错误条件可强制PWM输出为高、低以及高阻状态。高频载波信号实现PWM斩波,对于脉冲变压器门极驱动非常有用。ePWM子模块概述ePWM模块主要包含以下7部分:时间基准子模块;计数比较子模块;动作限定子模块;死区控制子模块;PWM斩波子模块;错误区域控制子模块和事件触发子模块。每个ePWM模块都是由7个子模块组成,并且系统内通过信号进行连接,如图:6.1增强型脉宽调制器(ePWM)ePWM模块内部结构如图:6.1增强型脉宽调制器(ePWM)ePWM模块的主要信号模块如下:PWM输出信号(ePWMxA和ePWMxB)错误区域信号(TZ1-TZ6)时间基准同步输入和输出信号ADC启动信号外设总线6.1增强型脉宽调制器(ePWM)1.时间基准子模块(TB)

每个ePWM都有自己的时间基准模块,它用来决定ePWM的事件时序。通过同步逻辑信号,可以实现多个ePWM模块以相同时间基准进行工作。图为ePWM模块的时间基准子模块的关系图。时间基准子模块(TB)(1)时间基准子模块的用途用户可以通过配置时间基准子模块实现以下功能:①指定ePWM时间基准计数器(TBCTR)的频率值或周期值以控制事件发生的频率。②与其它ePWM模块的时间基准同步。③维持与其它ePWM模块间的相位关系。⑤设置时间基准计数器为增、减或增减计数模式。⑥产生以下事件:CTR=PRD:时间基准计数器值等于指定的周期值(TBCTR=TBPRD);CTR=ZERO:时间基准计数器等于零(TBCTR=0x0000)。⑦配置时间基准的时钟率,即对CPU系统时钟(SYSCLKOUT)的预定标。时间基准子模块(TB)时间基准模块的关键信号和寄存器时间基准子模块(TB)信号描述ePWMMxSYNCI时间基准同步信号输入ePWMMxSYNCO时间基准同步信号输出CTR=PRD时间基准计数器等于指定周期CTR=Zero时间基准计数器等于零CTR=CMPB时间基准计数器等于计数寄存器CTR_dir时间基准计数方向CTR_max时间基准计数器等于最大值TBCLK时间基准时钟时间基准子模块(TB)与时间基准子模块相关联的关键信号计数PWM周期与频率

时间基准周期寄存器(TBPRD)和时间基准计数器共同控制PWM的频率,当TBPRD=4时周期和频率与计数器递增、递减以及递增递减时的关系。系统时钟(SYSCLKOUT)的预定标处理将得到时间基准时钟(TBCLK),由该时钟决定每次时间递增的步骤。时间基准子模块(TB)(1)递增计数模块时间基准计数器从周期值,当达到周期值,时间基准计数器复位置零,此时再重新开始递增计数,重复运行。(2)递减计数模式时间基准计数器从周期值递减到零,当达到零值时,时间基准计数器重置周期值,此时再重新递减重复运行。(3)递增递减计数模式时间基准计数器从零递增到周期值,当达到周期值,时间基准计数器开始递减直至零,此时再递增重复运行。时间基准子模块(TB)时间基准计数器有三种操作模式,可通过时间基准计数寄存器(TBCTL)选择:(1)当前工作寄存器(activeregister)。(2)映射寄存器(shadowregister)。(3)时间基准周期映射模式。(4)时间基准周期立即装载模式。时间基准周期映射寄存器时间基准子模块(TB)2.计数比较子模块计数比较子模块将时间基准计数器的计数值不断地同计数比较器A(CMPA)和计数比较器B(CMPB)寄存器做比较,当时间基准计数器等于其中一个比较寄存器的值时,计数比较单元产生相应的事件。①使用可编程的CMPA和CMPB寄存器产生相应比较事件:

CTR=CMPA,时间基准计数器等于计数比较寄存器A(TBCTR=CMPA)。

CTR=CMPB,时间基准计数器等于计数比较寄存器B(TBCTR=CMPB)。②若对动作限定子模块进行了相关配置,可控制PWM的占空比。③映射新的比较值,防止在当前的PWM周期中产生冲突。6.1.2ePWM子模块功能计数比较子模块计数比较子模块基本结构1.计数比较子模块的应用(1)两位独立的比较事件CTR=CMPA:时间基准计数器等于有效计数比较器A的值CTR=CMPB:时间基准计数器等于有效计数比较器B的值(2)两种工作模式映射模式立即装载模式2.计数模式时序波形计数比较子模块产生比较事件有以下三种模式:增计数模式:用于产生不对称的PWM脉冲波形。减计数模式:用于产生不对称的PWM脉冲波形。增减计数模式:用于产生对称的PWM脉冲波形。计数比较子模块动作限定子模块

动作限定子模块在PWM波形的产生中具有最重要的作用。它决定哪些事件可产生相关类型的动作,从而使EPWMxA和EPWMxB输出要求的波形。动作限定子模块(Action-qualifier)与其它模块的连接关系同图所示。基于以下事件限制并产生相应操作当事件发生时,管理产生事件的极性当时间基准计数器递增或递减计数时,提供事件的独立控制。如图:动作限定子模块输入输出信号。动作限定子模块动作限定子模块的应用ePWMxA和ePWMxB输出的几种操作方式

①置高:设置EPWMxA或EPWMxB输出为高电平。

②置低:设置EPWMxA或EPWMxB输出为低电平。

③取反:如果当前EPWMxA或EPWMxB输出被拉高,则将其拉低;如果当前EPWMxA和EPWMxB输出被拉低,则将其拉高。

④无动作:保持输出EPWMxA和EPWMxB为当前设置状态。尽管无动作操作不会改变EPWMxA和EPWMxB的输出,但相应事件仍可以触发中断和ADC开始转换。EPWMxA和EPWMxB的输出动作可以独立配置,任何事件都可以对给定的输出引脚进行动作控制。例如,CTR=CMPA和CTR=CMPB都可以对EPWMxA输出进行控制。所有的限定操作可以由控制寄存器进行配置。动作限定子模块动作限定事件优先级ePWM动作限定器有可能在同一时间接收多个事件,在这种情况下,通过硬件来分配事件的优先级。一般规则是发生较晚的事件有较高的优先级,由软件强制发生的事件总是具有最高的优先级。优先级别为1的是最高优先级。TBCTR计数方向的不同会带来优先级的细微变化。递增递减模式下动作限定事件优先级递增模式下动作限定事件优先级递减模式下动作限定事件优先级动作限定子模块ePWM死区子模块的结构如图死区产生子模块(DB)对单个EPWMx输入信号(死区子模块的输入信号)产生带有死区的信号对(EPWMxA和EPWMxB)。对信号对进行高有效(AH)、低有效(AL)、互补高有效(AHC)、互补低有效(ALC)配置。为上升沿增加可编程延迟(RED)。为下降沿增加可编程延迟(FED)。信号通道可以完全被旁路。死区产生子模块(DB)该模块的主要功能:死区产生子模块(DB)死区子模块的操作方法

死区子模块有两组独立的可选择方式,如图所示。这两组独立的可选择方式可以对输入信号源、输出模式及极性进行相应配置。死区产生子模块(DB)

①输入源选择。可以通过DBCTL寄存器的IN_MODE位来选择每个上升沿延迟或下降沿延迟的信号源,有如下几种模式:EPWMxAIn用作下降沿和上升沿延迟的信号源,此操作为默认模式;EPWMxAIn用作下降沿延迟的信号源,EPWMxBIn用作上升沿延迟的信号源;EPWMxAIn用作上升沿延迟的信号源,EPWMxBIn用作下降沿延迟的信号源;EPWMxBIn用作下降沿和上升沿延迟的信号源。

②输出模式控制。由DBCTL[OUT_MODE]位来控制输出模式,这些位可配置上升沿延迟输出、下降沿延迟输出、二者均作为或二者均不作为死区子模块的输出。

③极性控制。极性控制(DBCTL[POLSEL])位可以配置上升沿延迟、下降沿延迟信号在输出前是否进行翻转。PWM斩波器子模块可以通过动作限定和死区控制子模块产生高频PWM斩波,在使用PWM控制功率开关中此功能很重要。1、PWM斩波器子模块主要功能如下:1).可编程斩波频率。2).可编程第一个斩波脉冲的脉冲宽度。3).可编程第二个或其他脉冲的占空比。4).不必要时则完全可以不使用此功能。PWM斩波器子模块(PC)2、PWM斩波器的操作和输出波形如图给出PWM斩波器子模块具体操作结构,SYSCLKOUT分频提供该模块时钟,频率和占空比由PCCTL寄存器的CHPFREQ位与CHPDUTY位控制。PWM斩波器子模块(PC)PWM斩波器子模块(PC)3、单次触发脉冲首脉冲的宽度可配置为16种值,首脉冲的宽度或周期通过公式(6-1)计算:T1stpulse=TSYSCLKOUT×8×OSHTWTH(6-1)这里的TSYSCLKOUT是系统时钟周期,OSHTWTH是4位寄存器值,取值范围为1~16。4、占空比控制脉冲变压器门极驱动的设计需要考虑到变压器和相关电路的特性。饱和性就是其中一个需要考虑的因素。为了满足门极驱动设计要求,第二个和随后脉冲的占空比可通过编程设置。在功率开关导通的期间内,这些持续脉冲确保了合适的驱动能力和极性,并且可以通过软件设置脉冲的占空比和极性。图6-23是通过设置CHPDUTY位实现占空比控制的时序图,可选择的占空比范围是12.5%~87.5%。

如图给出了错误控制子模块的结构框图。每个ePWM模块都与6个TZn错误控制信号相连,这些错误控制信号与GPIO口复用。当这些信号呈现出外部错误或触发条件时,ePWM输出可以设置为相应的工作方式,来响应错误信号的发生。错误控制子模块(TZ)1、错误控制子模块主要功能①错误输入TZ1~TZ6可映射到任何一个ePWM模块。②当错误条件发生时,EPWMxA和EPWMxB的输出可以强制为高电平、低电平、高阻态或不动作。③对于严重的短路或者过流的情况支持单次触发错误(OSHT)。④支持当前限定操作的周期性触发。⑤每个错误区输入引脚可以分配为单次触发或者逐周期触发操作。⑥任何一个错误区引脚都可产生中断。⑦支持软件强制触发。⑧如不需要,错误控制子模块可以完全禁用。错误控制子模块(TZ)错误控制子模块(TZ)2、错误控制子模块的操作方式错误区~TZ1~TZ6引脚信号是低有效,当这些引脚是低电平时,就表示该引脚有错误事件发生。每个ePWM模块都能够独立配置为忽略或使用这些引脚信号。ePWM模块是否使用错误信号由TZSEL寄存器设置。

在每个ePWM模块中,可以独立配置输入为逐周期触发(CBC)或者单次触发(OSHT)。这两种配置分别由TZSEL[CBCn]和TZSEL[OSHTn]控制位(n对应错误输入引脚编号)决定。通过配置TZCTL[TZA]和TZCTL[TZB]寄存器位来分别给每个ePWM模块输出引脚配置一种触发事件发生时的动作。

①逐周期触发(CBC)。

②单次触发(OSHT)。1、事件触发子模块主要功能如下:1).接收时间基准模块和计数比较模块的事件输入。2).使用时间基准方向信息确定递增/递减计数。3).使用预定标逻辑确定中断请求和ADC转换启动。--每个事件触发一次--每两个事件触发一次--每三个事件触发一次4).通过事件计数器和事件标志提供事件产生标识。5).允许软件强制中断和ADC转换启动。事件触发子模块(ET)(TZ)2、事件触发子模块结构框图事件触发子模块由时间基准子模块和计数比较模块组成,当某个选择的事件发生时,向CPU产生中断和/或启动ADC转换。事件触发子模块(ET))这些事件包含多种类型,如图所示(图中事件触发子模块的左侧部分)。时间基准子模块和计数比较子模块产生的事件由事件触发子模块管理,当选择的事件发生时,就会产生一个CPU中断或一个启动AD转换的脉冲。事件触发子模块(ET))6.1.3ePWM寄存器说明时间基准子模块寄存(1)时间基准控制寄存器(TBCTL)(2)时间基准状态寄存器(TBSTS)(3)时间基准相位寄存器(TBPHS)(4)时间基准计数寄存器(TBCTR)(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论