DSP28335的PWM信号

DSP的PWM信号

  1. 简介
    DSP28335共12路16位的ePWM,能进行频率和占空比控制。
    ePWM的时钟TBCLK=SYSCLKOUT/(HSPCLKDIV×CLKDIV):在这里插入图片描述
    PWM信号频率由时基周期寄存器TBPDR和时基计数器的计数模式决定。初始化程序采用的计数模式为递增计数模式。在递增计数模式下,时基计数器从零开始增加,直到达到周期寄存器值(TBPDR)。然后时基计数器复位到零,再次开始增加。
    在这里插入图片描述

    PWM信号周期与频率的计算如下:
    在这里插入图片描述

  2. 端口对应关系
    在这里插入图片描述

3初始化程序注释
void InitPwm1AB(float32 f)
{
Uint16 T= 2343750/f-1.0;
//系统时钟SYSCLKOUT=150MHz,TBCLK=6.6666667ns,在连续增计数模式下,
//f=150000000/(TBPDR+1)
EALLOW;

//先初始化通用输入输出口//
GpioCtrlRegs.GPAPUD.bit.GPIO0 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 1;
GpioCtrlRegs.GPAPUD.bit.GPIO1 = 0;
GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 1;
EPwm1Regs.TBPHS.half.TBPHS = 0; // 在相位寄存器中设置计数器的起始计数位置
//下面两条语句组合对PWM的时钟进行分频
EPwm1Regs.TBCTL.bit.CLKDIV = 6;
EPwm1Regs.TBCTL.bit.HSPCLKDIV = 0;
EPwm1Regs.TBPRD = T; //在周期寄存器中设置计数器的计数周期

//TBCTL为定时器控制寄存器
EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP; //设置计数模式位为连续增计数模式,产生对称方波
EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE; // 将定时器相位使能位关闭
EPwm1Regs.TBCTL.bit.PRDLD = TB_SHADOW;//映射寄存器SHADOW使能并配置映射寄存器为自动读写
EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_CTR_ZERO; // 定时器时钟源选择,一共有四种时钟源
EPwm1Regs.CMPA.half.CMPA= 0.0001T;// 设置EPWM1A比较值寄存器的比较值,即体现EPWM1A的占空比
EPwm1Regs.CMPB= 0.0001
T;
EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;//A模块比较模式
EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;//B模块比较模式
EPwm1Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // A模块比较使能,通过写0来清除SHDWAMODE位来使能load on CTR=Zero
EPwm1Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // B模块比较使能,通过写0来清除SHDWBMODE位来使能load on CTR=Zero

//AQCTLA为输出A比较方式控制寄存器
EPwm1Regs.AQCTLA.bit.ZRO = AQ_SET; // TBCTR(计数器)计到零时使输出为反向
EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR;//TBCTR(计数器)与CMPA在up计数时相等使输出为high,这关系的输出的占空比
EPwm1Regs.AQCTLB.bit.ZRO = AQ_SET;
EPwm1Regs.AQCTLB.bit.CBU = AQ_CLEAR;
EDIS;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

工藤新一_柯南

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

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

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

打赏作者

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

抵扣说明:

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

余额充值