资源简介
基于DSP28335的SVPWM,下载在MCU中即可生成SVPWM算法可靠,具有很好的参考价值,需要的请自行下载
代码片段和文件信息
#include “DSP2833x_Device.h“ // DSP2833x Headerfile Include File
#include “DSP2833x_Examples.h“ // DSP2833x Examples Include File
#include “math.h“
#include “float.h“
/*经典SVPWM算法程序*/
void InitEPwm1(void);
void InitEPwm2(void);
void InitEPwm3(void);
#pragma CODE_SECTION(epwm1_isr “ramfuncs“);// 将中断服务函数转移到RAM
interrupt void epwm1_isr(void);
#define PRD 7500 // PWM周期寄存器
#define PI 3.1415926
#define N 200
#define delta 2*PI/N
float VaVbVct1t2TaTbTcXYZUalfaUbeta;
Uint16 DADBDCDD;
float M=0.9;
float Data[200] = {0};
Uint16 sectorCAL=0;
int i=66;
void main(void)
{
InitSysCtrl();
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EALLOW;
PieVectTable.EPWM1_INT = &epwm1_isr;
EDIS;
EALLOW;
SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;
EDIS;
InitEPwm1Gpio();
InitEPwm2Gpio();
InitEPwm3Gpio();
InitEPwm1();
InitEPwm2();
InitEPwm3();
EALLOW;
SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;
EDIS;
memcpy(&RamfuncsRunStart &RamfuncsLoadStart (Uint32)&RamfuncsLoadSize);
InitFlash();
IER |= M_INT3; //EPWM1的中断
PieCtrlRegs.PIEIER3.bit.INTx1 = 1;
EINT; //开中断
ERTM; //使能调试事件
for(;;)
{
/*****调试使用******/
DA = EPwm1Regs.CMPA.half.CMPA/2;
DB = EPwm3Regs.CMPA.half.CMPA/2;
DC = EPwm2Regs.CMPA.half.CMPA/2;
DD = Ubeta*300+1000;
}
}
void InitEPwm1()
{
// 配置时钟
EPwm1Regs.TBPRD = PRD; // 设置周期
EPwm1Regs.TBPHS.half.TBPHS=0x0000; //phase is 0
EPwm1Regs.TBCTR = 0x0000; // Clear conuter
// Setup TBCLK
EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN; //增减计数模式
EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE; // Disable phase loading
EPwm1Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1; // Clock ratio to SYSCLKOUT /1
EPwm1Regs.TBCTL.bit.CLKDIV = TB_DIV1; //TBCLK=SYSCLKOUT/(HSPCLKDIV*CLKDIV)=150MHz
EPwm1Regs.TBCTL.bit.PRDLD = TB_SHADOW; //The period register (TBPRD) is loaded from its shadow register
EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_CTR_ZERO; // Sync down-stream module,同步输出选择设定
// Setup shadowing
EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
EPwm1Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // Load on Zero
EPwm1Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO;
// Set actions
EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR ;
EPwm1Regs.AQCTLA.bit.CAD = AQ_SET ; // Set PWM1A on event A up count
// 配置死区
EPwm1Regs.DBCTL.bit.IN_MODE = DBA_ALL; // enable Dead-band module
EPwm1Regs.DBCTL.bit.POLSEL = DB_ACTV_HIC; // Active low complementary (ALC) mode. EPWMxA is inverted.
EPwm1Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE; //低电平有效,互补输出。
EPwm1Regs.DBFED = 300; // FED = 300 TBCLKs
EPwm1Regs.DBRED = 300; // RED = 300 TBCLKs
// 配置中断
EPwm1R
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-14 17:16 SVPWM\
文件 563 2016-09-01 19:15 SVPWM\.ccsproject
文件 22356 2017-06-09 22:02 SVPWM\.cproject
目录 0 2019-04-14 17:16 SVPWM\.launches\
文件 10340 2018-12-11 18:13 SVPWM\.launches\SVPWM.launch
文件 835 2016-08-24 17:05 SVPWM\.project
目录 0 2019-04-14 17:16 SVPWM\.settings\
文件 62 2016-08-24 16:05 SVPWM\.settings\org.eclipse.cdt.codan.core.prefs
文件 220 2016-08-24 16:17 SVPWM\.settings\org.eclipse.cdt.core.prefs
文件 123 2016-08-24 16:05 SVPWM\.settings\org.eclipse.cdt.debug.core.prefs
文件 293 2016-08-24 16:16 SVPWM\.settings\org.eclipse.core.resources.prefs
文件 7270 2017-01-02 09:01 SVPWM\28335_RAM_lnk.cmd
目录 0 2019-04-14 17:16 SVPWM\Debug\
文件 505 2018-12-11 18:12 SVPWM\Debug\ccsObjs.opt
文件 35118 2018-12-11 18:12 SVPWM\Debug\main.obj
文件 3895 2018-12-11 18:12 SVPWM\Debug\main.pp
文件 5181 2018-12-11 18:12 SVPWM\Debug\makefile
文件 250 2018-12-11 18:12 SVPWM\Debug\ob
文件 2026 2018-12-11 18:12 SVPWM\Debug\sources.mk
目录 0 2019-04-14 17:16 SVPWM\Debug\src\
文件 13485 2016-08-24 17:06 SVPWM\Debug\src\DSP2833x_Adc.obj
文件 2810 2016-08-24 17:06 SVPWM\Debug\src\DSP2833x_Adc.pp
文件 1534 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_ADC_cal.obj
文件 1842 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_CodeStartBranch.obj
文件 6334 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_CpuTimers.obj
文件 3977 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_CpuTimers.pp
文件 858 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_CSMPasswords.obj
文件 1624 2016-08-24 17:06 SVPWM\Debug\src\DSP2833x_DBGIER.obj
文件 32929 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_DefaultIsr.obj
文件 4005 2018-12-11 18:12 SVPWM\Debug\src\DSP2833x_DefaultIsr.pp
文件 1699 2016-08-24 17:06 SVPWM\Debug\src\DSP2833x_DisInt.obj
............此处省略96个文件信息
相关资源
- 基于DSP的SVPWM变频调速系统
- 基于FPGA的SVPWM实现方法
- SVPWM的原理及法则推导和控制算法详解
- 基于DSP28335的直流电机闭环调速
- 三电平逆变器SVPWM控制
- st5.0库说明 foc pmsm
- 永磁同步电机无位置传感器DSP28335代码
- SVPWM输出程序
- 三电平SVPWM算法研究及仿真
- TIDSP28335CAN中文使用手册.pdf
- 风电及光伏智能电网设计包含光伏电
- 讲解SVPWM说明
- DSP28335的PMSM的SVPWM电机代码
- dsp28335各外设
- DSP28335串口二阶BOOT源码
- DSP28335中文手册
- 两电平SVPWM带Z源仿真模型
- 用于DSP28335的编程例程 主要是用于有
- DSP28335TI例程
- ST直流无刷电机控制源码
- ucos ii 在DSP28335上的移植
- dsp28335数据手册 中文版
- ucos2.52在DSP28335上的移植程序,RAM版
- SVPWM的原理及法则推导和控制算法详解
- SVPWM详解.pdf
- 异步电机SVPWM控制研究
- dsp28335官方例程
- DSP28335 SYS/BIOS
- SVPWM仿真 ·
- DSP28335控制单相逆变器双闭环控制程序
评论
共有 条评论