資源簡介
SVPWM.zip

代碼片段和文件信息
//?TI?File?$Revision:?/main/8?$
//?Checkin?$Date:?April?21?2008???15:41:53?$
//###########################################################################
//
//?FILE:????Example_2833xEPwmUpDownAQ.c
//
//?title:???空間電壓矢量產生程序SVPWM
//
//?ASSUMPTIONS:
//
//????This?program?requires?the?DSP2833x?header?files.??
//
//????Monitor?ePWM1-ePWM3?pins?on?an?oscilloscope?as?described
//????below.
//
//???????EPWM1A?is?on?GPIO0-------5腳
//???????EPWM1B?is?on?GPIO1-------6腳
//
//???????EPWM2A?is?on?GPIO2-------7腳
//???????EPWM2B?is?on?GPIO3-------10腳
//
//???????EPWM3A?is?on?GPIO4-------11腳
//???????EPWM3B?is?on?GPIO5-------12腳
//
//
//###########################################################################
//?$TI?Release:?DSP2833x/DSP2823x?Header?Files?V1.20?$
//?$Release?Date:?August?1?2008?$
//###########################################################################
#include?“DSP28x_Project.h“?????//?Device?Headerfile?and?Examples?Include?File
//?Prototype?statements?for?functions?found?within?this?file.
void?InitEPwm1Example(void);
void?InitEPwm2Example(void);
void?InitEPwm3Example(void);
void?svpwmGen(void);
interrupt?void?svpwm_isr(void);
volatile?float?UalphaUbeta;
volatile?float?ABC;
volatile?float?T0T1T2T3T4T5T6;
volatile?float?TaonTbonTcon;
float?UaUbUc;
float?Ts;
int?abc;
int?N=?0sector=?0;
#define?TPRD?800
#define?Udc??800
void?main(void)
{
//?Step?1.?Initialize?System?Control:
//?PLL?WatchDog?enable?Peripheral?Clocks
//?This?example?function?is?found?in?the?DSP2833x_SysCtrl.c?file.
???InitSysCtrl();
//?Step?2.?Initalize?GPIO:?
//?This?example?function?is?found?in?the?DSP2833x_Gpio.c?file?and
//?illustrates?how?to?set?the?GPIO?to?it‘s?default?state.
//?InitGpio();??//?Skipped?for?this?example??
//?For?this?case?just?init?GPIO?pins?for?ePWM1?ePWM2?ePWM3
//?These?functions?are?in?the?DSP2833x_EPwm.c?file
???InitEPwm1Gpio();
???InitEPwm2Gpio();
???InitEPwm3Gpio();???
???
//?Step?3.?Clear?all?interrupts?and?initialize?PIE?vector?table:
//?Disable?CPU?interrupts?
???DINT;
//?Initialize?the?PIE?control?registers?to?their?default?state.
//?The?default?state?is?all?PIE?interrupts?disabled?and?flags
//?are?cleared.??
//?This?function?is?found?in?the?DSP2833x_PieCtrl.c?file.
???InitPieCtrl();
???
//?Disable?CPU?interrupts?and?clear?all?CPU?interrupt?flags:
???IER?=?0x0000;
???IFR?=?0x0000;
//?Initialize?the?PIE?vector?table?with?pointers?to?the?shell?Interrupt?
//?Service?Routines?(ISR).??
//?This?will?populate?the?entire?table?even?if?the?interrupt
//?is?not?used?in?this?example.??This?is?useful?for?debug?purposes.
//?The?shell?ISR?routines?are?found?in?DSP2833x_DefaultIsr.c.
//?This?function?is?found?in?DSP2833x_PieVect.c.
???InitPieVectTable();
//?Interrupts?that?are?used?in?this?example?are?re-mapped?to
//?ISR?functions?found?within?this?file.??
???EALLOW;??//?This?is?needed?to?write?to?EALLOW?protected?registers
???PieVectTa
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????13187??2012-11-27?21:15??SVPWM.c
評論
共有 條評論