关于DSP的PWM全比较输出程序 这样对吗?F2812 Device Emulator

[复制链接]
查看11 | 回复1 | 2011-6-1 20:03:30 | 显示全部楼层 |阅读模式
#include "DSP281x_Device.h"
// DSP281x Headerfile Include File
#include "DSP281x_Examples.h" // DSP281x Examples Include File
// Prototype statements for functions found within this file.
void init_eva(void);
void init_evb(void);
void main(void)
{
InitSysCtrl();
EALLOW;
GpioMuxRegs.GPAMUX.all = 0x00FF;
GpioMuxRegs.GPBMUX.all = 0x00FF;
EDIS;


DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();

init_eva();
init_evb();
for(;;);
}
void init_eva()
{
EvaRegs.EXTCON.bit.INDCOE=1;
EvaRegs.ACTRA.all=0x00aa;
EvaRegs.CMPR1=0x0050;
EvaRegs.CMPR2=0x0050;
EvaRegs.COMCONA.all=0xa460;
EvaRegs.T1CNT = 0x0000;
EvaRegs.T1CON.all = 0x1742;
EvaRegs.T1PR = 0x00FF;

}
void init_evb()
{
EvbRegs.EXTCON.bit.INDCOE=1;
EvbRegs.ACTRA.all=0x00aa;
EvbRegs.CMPR1=0x0050;
EvbRegs.CMPR2=0x0050;
EvbRegs.COMCONA.all=0xa460;
EvbRegs.T3CNT = 0x0000;
EvbRegs.T3CON.all = 0x1742;
EvbRegs.T3PR = 0x00FF;

}
周期的什么的没告诉
实现占空比50%和80%两种情况
EvbRegs.CMPR1=0x0050;
EvbRegs.CMPR2=0x0050; //占空比50%
EvbRegs.CMPR1=0x0080;
EvbRegs.CMPR2=0x0020;//占空比80%
这样写可以吗?

回复

使用道具 举报

千问 | 2011-6-1 20:03:30 | 显示全部楼层
好像不是这样的吧,你可以把EvaRegs.T1PR =1000;然后就可以把EvbRegs.CMPR1=500;EvbRegs.CMPR2=800;不就可以在PWM1-2输出两咱50%的PWM波吗。而在PWM3-4上输出分别为80%和20%的PWM波吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行