ePWM学习心得

本文详细介绍了ePWM模块的工作原理,包括时间基准子模块TB、计数器比较功能子模块CC和动作限定子模块AQ。通过TB模块的计数时钟配置和计数模式,以及CC模块的比较事件,阐述了如何生成PWM波形。同时,讨论了ePWM的死区控制子模块DB和中断例程,提供了PWM输出的具体配置示例。
摘要由CSDN通过智能技术生成

1 .问:什么是ePWM?
答:ePWM,即增强型脉宽调制模块,作用是产生频率、相位和占空比可调的方波脉冲。
PWM(Pulse Width Modulation)脉宽调制的相关参数有频率、占空比、幅值等。频率f = 1/T(周期),占空比D(Duty) = H/T(高电平时间与周期的比值)。

2 .问:ePWM产生PWM方波的基本原理?
答:ePWM产生PWM的基本原理
从上图可以看出需要有三个寄存器,周期寄存器TPR,计数器寄存器TCNT和比较寄存器CMPR。周期寄存器TPR决定了一个周期计数的最大值,也就是决定了PWM的周期。计数器寄存器TCNT按照时钟信号来进行计数,上图采用的是增减计数模式,即从0增计数到TPR,然后再从TPR减计数到0,不断重复。当计数器寄存器TCNT的值与比较寄存器的值CMPR相等时,PWM的电平发生变化,由低电平变为高电平,或者由高电平变为低电平,从而产生周期性的PWM波形。改变周期寄存器TPR,就可以改变PWM的周期,即可以改变PWM的频率;改变比较寄存器CMPR,就可以改变PWM的占空比。这就是产生PWM波的基本原理。

3 .问:ePWM具体有哪些子模块?
答:ePWM的子模块及主要信号
上图是ePWM的子模块及主要信号,从中可以看出,ePWM模块内部包含有7个子模块,分别是时间基准子模块TB、比较功能子模块CC,动作限定子模块AQ、死区控制子模块DB、斩波控制子模块PC、事件触发子模块ET和故障捕获子模块TZ。(经过TB,CC,AQ三个环节后,已经产生了PWM的基本形状)

ePWM模块可以输出两路PWM,即EPWMxA和EPWMxB,两路PWM可以独立输出,也可以互补输出。

4 .TB模块
全称时间基准(Time Base)模块。该模块主要有两个作用:一个是时钟信号的同步,另一个是计数。
时间基准子模块TB
上图是TB子模块内部关键信号及主要寄存器,通过TB模块可以实现多项功能:计数时钟的配置、计数模式的选择、同步信号的选择、相位的控制等。

时间基准子模块TB相关的寄存器如下表所示:
在这里插入图片描述
计数时钟:
时基模块的计数时钟TBCLK是由系统时钟SYSCLKOUT分频得到的。它和控制寄存器TBCTL的两个位有关,HDSPCLKDIV(高速时基时钟分频位)和CLKDIV(时基时钟分频位)。

计数时钟TBCLK的计算公式为:
在这里插入图片描述
其中,HSPCLKDIV的值为x,CLKDIV的值为y。

基于TMS320F28335,SYSCLKOUT为150MHz,如果HSPCLKDIV=0,CLKDIV=2,则TBCLK=37.5MHz。

计数模式和PWM的周期:
时间基准子模块的计数器一共有三种计数模式,增计数、减计数和增减计数。

当计数器采用增计数或减计数模式时,PWM的计数周期为:
TPWM = TBPRD + 1
当计数器采用增减计数模式时,PWM的计数周期为:
TPWM = 2 x TBPRD
每计一次数所需的时间是由计数时钟来决定的,设计数时钟TBCLK为Y MHz,则每计一次数需要时间为:
tCLK = 1 / (Y x 106) s
则PWM的周期为:T = TPWM x tCLK (f = 1/T)

映射寄存器:
TBCTL[PRDLD]=0,TBPRD使用映射模式,此时CPU读写TBPRD的地址单元将直接作用于映射寄存器。当计数器TBCTR的值等于0时,映射寄存器中的内容直接装载到当前寄存器;

TBCTL[PRDLD]=1,TBPRD使用立即模式,此时CPU读写TBPRD的地址单元时将绕开映射寄存器,而直接作用于当前寄存器。

5 .CC模块
计数器比较功能(Counter Compare)模块有两个比较寄存器CMPA和CMPB,其功能就是将计数器寄存器TBCTR的值和这两个比较寄存器的值进行比较,由此产生比较事件,从而产生PWM波。

当计数器寄存器TBCTR的值与比较寄存器A的值相等时,会产生CTR=CMPA事件;
当计数器寄存器TBCTR的值与比较寄存器B的值相等时,会产生CTR=CMPB事件。

比较功能子模块CC相关的寄存器如下表所示:
在这里插入图片描述

比较寄存器CMPA和CMPB都有相应的映射寄存器,以CMPA为例。
CMPCTL[SHDWAMODE]=0,CMPA采用映射模式,此时需要通过CMPCTL[LOADAMODE]位来选择何时将映射寄存器中的内容装载进当前寄存器中(有4种装载条件选择模式:①00:在CTR=0时;②01:在CTR=PRD时;③10:在CTR=0或CTR=PRD时;④11:禁止);

CMPCTL[SHDWAMODE]=1,CMPA采用立即模式,只要值有更新,就

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值