⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsp281x_ev.c

📁 dsp 编程实现的PWM
💻 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 + -