📄 dsp281x_ev.c
字号:
//###########################################################################
//
// FILE: DSP281x_Ev.c
//
// TITLE: DSP281x Event Manager Initialization & Support Functions.
//
//###########################################################################
//
// Ver | dd mmm yyyy | Who | Description of changes
// =====|=============|======|===============================================
// 1.00| 11 Sep 2003 | L.H. | No change since previous version (v.58 Alpha)
//###########################################################################
#include "DSP281x_Device.h" // DSP281x Headerfile Include File
#include "DSP281x_Examples.h" // DSP281x Examples Include File
//---------------------------------------------------------------------------
// InitEv:
//---------------------------------------------------------------------------
// This function initializes to a known state.
//
void InitEv(void)
{
//EVA配置T1PWM,T2PWM,PWM1-PWM6
//初始定时器1
//EvaRegs.T1PR=0xFFFF;
//EvaRegs.T1CMPR=0x3C00;
//EvaRegs.T1CNT=0x0000;
//TMODE=连续递增/递减计数,定时器使能,比较使能
//EvaRegs.T1CON.all=0x1042;
//初始定时器2
//Configure EV_A
//EvaRegs.EXTCONA.bit.INDCOE=1;
//EvaRegs.GPTCONA.all=0;
EvaRegs.T1PR=0x03FF; //set peripher register
EvaRegs.T1CMPR=0x00FF;//set T1 compare value
EvaRegs.EVAIMRA.bit.T1CINT=1;
EvaRegs.EVAIMRA.bit.T1OFINT=1;
EvaRegs.EVAIMRA.bit.PDPINTA=0;
EvaRegs.EVAIFRA.bit.T1CINT=1;
EvaRegs.EVAIFRA.bit.T1UFINT=1;
EvaRegs.T1CNT=0x000;
EvaRegs.GPTCONA.bit.T1TOADC=1; // eanble eva_t1 underflow to adc start conversion
//设置T1PWM和T2PWM
//比较逻辑驱动T1/T2 PWM
//EvaRegs.GPTCONA.bit.T1CMPOE=1;
EvaRegs.GPTCONA.bit.TCMPOE=1;
EvaRegs.GPTCONA.bit.T1PIN=1;//低电平有效
//EvaRegs.GPTCONA.bit.T2PIN=2;//高电平有效
EvaRegs.T1CON.all=0x104A;// enable T1 as compare function(up mode);
//EvaRegs.T2PR=0xFFFF;
//EvaRegs.T2CMPR=0x3C00;
//EvaRegs.T2CON.all=0x1042;
//使能PWM1-PWM6的比较功能
EvaRegs.CMPR1=0x001C;
EvaRegs.CMPR2=0x001C;
EvaRegs.CMPR3=0x001C;
//比较方式控制
//输出引脚1 CMPR1-高有效
//输出引脚2 CMPR1-低有效
//输出引脚3 CMPR2-高有效
//输出引脚4 CMPR2-低有效
//输出引脚5 CMPR3-高有效
//输出引脚6 CMPR3-低有效
EvaRegs.ACTRA.all=0x0666;
EvaRegs.DBTCONA.all=0x0000;//禁止死区
EvaRegs.COMCONA.all=0xA600;
}
//===========================================================================
// No more.
//===========================================================================
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -