【DSP】EPWM寄存器

一. EPWM寄存器介绍

增强型脉宽调制器(ePWM)外设是控制商业和工业设备中许多电力电子系统的关键元件。这些系统包括数字电机控制、开关模式电源控制、不间断电源(UPS)和其他形式的电源转换。ePWM外设还可以执行数字模拟(DAC)功能,其中占空比相当于DAC模拟值;它有时被称为功率DAC。

主要包含的模块有:
1.时基模块(TB)
2.计数比较模块(CC)
3.功能限定模块(AQ)
4.死区控制模块 ( DB )
5.斩波模块 ( PC )
6.制动模块 ( TZ )
7.事件模块 ( ET )
8.数字比较(DC)

时基模块(TB)

1.TBCTL寄存器

其中的HSPCLKDIV和CLKDIV为时钟的预分频位:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

CTRMODE计数器的模式位,可以选择向上或向下或上下计数在这里插入图片描述
PHSEN位:从相位寄存器加载计数器寄存器使能
0:不从TBPHS寄存器中加载TBCTR
1:当EPWMxSYNCI输入信号或软件强制同步信号发生时,允许计数器从相位寄存器(TBPHS)和影子寄存器加载到主动加载事件。
在这里插入图片描述
0:周期寄存器(TBPRD)从其阴影寄存器加载
1:立即模式
在这里插入图片描述

相位方向位:
在这里插入图片描述
该位仅在将时基计数器配置为上下计数模式时使用。PHSDIR位表示时间基准计数器(TBCTR)在同步后的计数方向事件发生,并从相位(TBPHS)寄存器加载一个新的相位值。

这是不管同步事件发生前计数器的方向如何。在上行计数和下行计数模式下,该位被忽略。0:从同步事件向下计数 1:在同步事件向上计数

2.TBPRD寄存器
在这里插入图片描述
时基周期寄存器这些位决定了时基计数器的周期,可设置PWM频率。

该寄存器的阴影由TBCTL PRDLD位启用和禁用。

默认情况下,该寄存器是禁用的。

如果TBCTL PRDLD = 0,则启用了阴影,任何写或读都将自动进入阴影寄存器。在这种情况下,当时基计数器等于零时,活动寄存器将从阴影寄存器加载。

如果TBCTL PRDLD = 1,则禁用了阴影,任何写或读都将直接到活动寄存器,即主动控制硬件的寄存器。活动寄存器和阴影寄存器共享相同的内存映射地址。

3.TBPHS寄存器

相位偏移寄存器这些位设置所选ePWM相对于提供同步输入信号的时基的时基计数器相位。
在这里插入图片描述

计数比较模块(CC)

1.CMPA寄存器

CMPA寄存器中的值不断与时基计数器(TBCTR)进行比较。当值相等时,计数器比较模块生成一个“等于计数器比较a的基于时间的计数器”事件。此事件被发送到动作限定模块,在那里它被限定并将其转换为一个或多个动作。这些操作可以应用于EPWMxA或EPWMxB输出,具体取决于AQCTLA和AQCTLB寄存器的配置。可以在AQCTLA和AQCTLB寄存器中定义的动作包括:

00:不动作
01:强制EPWMxA输出低
10:强制EPWMxA输出高
11:反转EPWMxA输出

2.CMPCTL寄存器

其中的LOADAMODE寄存器,活跃的CMPA寄存器从影子选择模式中加载,这个位在立即模式中没有影响(CMPCTL SHDWAMODE=1)
00:从CTR=0中加载:时基计数器等于0(TBCTR=0)
01:从CTR=PRD中加载:时基计数器等于周期(TBPRD=TBPRD)
10:从CTR = 0 或 CTR=PRD中加载
11:冻结 不加载
在这里插入图片描述
在CMPCTL寄存器中有LOADDMODE,LOADCMODE位
在这里插入图片描述

功能限定模块(AQ)

1.AQCTLA寄存器

其中的CAD位:

TBCTR = CMPA Down Count时的动作,根据定义,在计数上下模式时,计数器等于方向定义为0或向下数。

其中的CAU位:

TBCTR = CMPA Up Count时的动作,根据定义,在计数上下模式时,计数器等于方向定义为1或向上数。
在这里插入图片描述
00:不动作
01:强制EPWMxA输出低
10:强制EPWMxA输出高
11:反转EPWMxA输出
在这里插入图片描述
AQCTLA控制EPWMA的动作,AQCTLB控制EPWMB的动作
CAU与CBU的差异,主要是使用比较值CMPA与CMPB的差异

死区控制 ( DB ) 模块

1.DBCTL寄存器的IN_MODE位

死区输入模式控制位

选择输入源的上升沿和下降沿的延迟,产生经典的死区控制波形,默认情况下EPWMxA在上升沿或者下降沿都有延迟。

00:EPWMxA在上升沿和下降沿都有延迟
01:EPWMxB在上升沿信号延迟,EPWMxA在下降沿信号延迟
10:EPWMxA在上升沿信号延迟,EPWMxB在下降沿信号延迟
11:EPWMxB在上升沿和下降沿都有延迟
在这里插入图片描述
POLSEL位:
00: AH模式,EPWMxA和EPWMxB都不反转
01: ALC模式,EPWMxA反转
10: AHC模式,EPWMxB反转
11:AL模式,EPWMxA和EPWMxB都反转
在这里插入图片描述
OUT_MODE位
在这里插入图片描述

数字比较(DC)模块

数字比较子模块通过为数字比较信号提供滤波、消隐(blanking)和改进访问功能(trip functionality),增强了事件触发和访问区域子模块。这些特性对于峰值电流模式控制和模拟比较器的支持是必不可少的。
在这里插入图片描述
在ePWM系统中,数字比较(DC)子模块信号与其他子模块的接口如图所示。eCAP输入信号来源于input X-BAR信号,任何GPIO引脚都可以灵活地映射为访问区输入和/或访问输入到访问区子模块和数字比较子模块。

Input X-BAR Input Select (INPUTxSELECT)寄存器定义哪些GPIO引脚被分配为跳闸区输入/跳闸输入。数字比较(DC)子模块比较ePWM模块外部的信号(例如,来自模拟比较器的CMPSSx信号),以直接生成PWM事件/动作,然后将其馈送到事件触发器、跳闸区和时基子模块。此外,还支持消隐窗口功能,以过滤来自DC事件信号的噪声或不需要的脉冲。

二.ePWM的周期和频率的计算

ePWM的频率是由时基周期寄存器值(TBPRD)和时基计数器的计数模式(TBCTRL)共同决定。

时基计数器的计数模式有向上计数(递增)模式、向下计数(递减)模式、向上-下计数(先递增后递减)模式。

当周期寄存器设置为4(TBPRD=4)

1.向上-下计数模式

在此模式下,时基计数器先从0开始向上计数(递增)直到递增到周期寄存器的值为4,然后再由4向下计数(递减)直到减到0,再重复以上动作。
在这里插入图片描述
根据公式:
比如TBCLK=EPWMCLK=100Mhz=10ns,TBPRD=10000
Tpwm=2 * TBPRD * TBCLK=2x10000x10ns=200us

Fpwm = 1 / Tpwm = 1 / 200 = 5 KHz

在此种模式下,随着同步信号的来临,时基模块的输出波形有两种情形,需要通过设置相位方向TBCTL[PHSDIR]来确定。如果TBCTL[PHSDIR]=0时,那么当同步信号到来时,递增过程中,直接使用TBPHS的值,然后递减;递减过程中,直接使用TBPHS的值,然后递减,对应的输出波形如图所示。
在这里插入图片描述
如果TBCTL[PHSDIR]=1时,那么当同步信号到来时,递增过程中,直接使用TBPHS的值,然后递增;递减过程中,直接使用TBPHS的值,然后递增,对应的输出波形如图所示。
在这里插入图片描述
死区时间计算:
在这里插入图片描述
TBCLK=EPWMCLK=100Mhz=10ns
比如DBFED=400
FED=DBFEDTBCLK=40010ns=4us

  • 7
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风雨同舟1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值