• 大小: 1.51MB
    文件类型: .zip
    金币: 2
    下载: 2 次
    发布日期: 2023-08-09
  • 语言: 其他
  • 标签: DSP28335  

资源简介

TMS320F28335控制单相逆变器的程序 采样实现双闭环控制

资源截图

代码片段和文件信息


#include “DSP2833x_Device.h“
#include “DSP2833x_Examples.h“

extern void Default_GPIO();
extern void Initial_Epwm1();
extern void Initial_Epwm2();
extern void Initial_GPIO();
extern void Initial_GPIOEpwm1();
extern void Initial_GPIOEpwm2();
extern void Initial_GPIOEpwm3();
extern void Initial_GPIOEpwm4();
extern void Initial_GPIOSpi();
extern void DAC_Update(int channel float input);
void Initial_SPI_DAC();

Uint32 N=600; //载波比
float M=0.8;  //调制度
//Uint32 i;


void main(void)
 {
// Part.1 Initialize the System Control

 InitSysCtrl();

  // Part.2 Initialize the GPIO

//  Default_GPIO();

 // Part.3 Clear all interrupts and initialize PIE vector table

    // NO.1 Disable the CPU interrupts

 DINT;

// NO.2 Initialize all the PIE registers to default states
// the default state is all PIE interrupt disabled and the flags cleared

 InitPieCtrl();

// NO.3 Disable all the CPU interrupts and clear all the flags

 IER = 0x0000;
 IFR = 0x0000;

// NO.4 Initialize the PIE vector table; Re-map the ISR function

 InitPieVectTable();

 EALLOW;

     // Re-map the SEQ1INT_isr(ADC interrupt) as the main_isr

//  PieVectTable.SEQ1INT = &main_isr;

     EDIS;

 // Part.4 Initialize all the Device Peripherals

     EALLOW;
     SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;
     EDIS;

     Initial_GPIO();
     Initial_GPIOEpwm1();
     Initial_GPIOEpwm2();
//      Initial_GPIOEpwm3();
//      Initial_GPIOEpwm4();
     // Epwm_initial
     Initial_Epwm1();
     Initial_Epwm2();
//      Initial_Epwm3();
//      Initial_Epwm4();

     EALLOW;
     SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;
     EDIS;

     // GPIO initial

//      Initial_GPIOEpwm3();
//      Initial_GPIOEpwm4();
     Initial_GPIOSpi();

     // ADC initial
//      InitAdc();
//      Initial_ADC();
     InitAdc();
     // SPI_DAC initial
     Initial_SPI_DAC();


 // Part.5 User specific coders

     // Variable initial
//      Initial_variable();

     // Wake up the DAC chip
     DAC_Update(0 0);

 // Part.6 Enable Interrupts

    //NO.1 Enable CPU interrupts

     // Include INT SEQ1INT
     IER |= M_INT1;

    //NO.2 Enable PIE interrupts

     // PIE INT SEQ1INT
     PieCtrlRegs.PIEIER1.bit.INTx1 = 1;

    //NO.3 global Interrupts and higher priority real-time debug events

     EINT;
     ERTM;


// Part.7 Loop forever

     while(1)
     {

//       if(run_state == STOP)
//       {
//       stop();
//       }
//       else if(run_state == START)
//       {
//       start();
//       }
    }
 }

void Initial_SPI_DAC(void)
 {
   // Part.1 Reset the SPI ; Output the data in rise step
 SpiaRegs.SPICCR.bit.SPISWRESET = 0;
 SpiaRegs.SPICCR.bit.CLKPOLARITY = 0;

   // Part.2 Ban the loop self-test; 16 bite;
 SpiaRegs.SPICCR.bit.SPILBK = 0;
 SpiaRegs.SPICCR.bit.SPICHAR = 15;

   // Part.3
     // Overflow interrupt enable is prohibited
 SpiaRegs.SPICTL.bit.OVERRUNINTENA = 0;
 // There is no delay of signals
 SpiaRegs.SPICTL.bit.C

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-12-13 22:16  spwm_two_close\
     文件         517  2017-01-03 15:01  spwm_two_close\.ccsproject
     文件       22788  2017-08-01 10:14  spwm_two_close\.cproject
     目录           0  2018-12-13 22:16  spwm_two_close\.launches\
     文件        4120  2017-07-15 13:36  spwm_two_close\.launches\DVR_1_3.launch
     文件        4587  2017-08-01 10:09  spwm_two_close\.launches\spwm_28335_close.launch
     文件        4573  2017-08-02 14:52  spwm_two_close\.launches\spwm_two_close.launch
     文件         844  2017-08-01 10:14  spwm_two_close\.project
     目录           0  2018-12-13 22:16  spwm_two_close\.settings\
     文件          62  2017-08-01 10:14  spwm_two_close\.settings\org.eclipse.cdt.codan.core.prefs
     文件         123  2017-01-03 15:00  spwm_two_close\.settings\org.eclipse.cdt.debug.core.prefs
     文件         618  2017-07-15 11:11  spwm_two_close\.settings\org.eclipse.core.resources.prefs
     文件        7330  2016-01-11 16:45  spwm_two_close\28335_RAM_lnk.cmd
     目录           0  2018-12-13 22:16  spwm_two_close\28335_headers\
     文件       10476  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_Adc.h
     文件        5881  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_CpuTimers.h
     文件       13987  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_DMA.h
     文件        6326  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_DefaultIsr.h
     文件        2901  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_DevEmu.h
     文件        6058  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_Device.h
     文件        2004  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_Dma_defines.h
     文件       45536  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_ECan.h
     文件        6117  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_ECap.h
     文件       16550  2016-01-08 14:42  spwm_two_close\28335_headers\DSP2833x_EPwm.h
     文件        7827  2017-08-02 14:32  spwm_two_close\28335_headers\DSP2833x_EPwm_defines.h
     文件       10061  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_EQep.h
     文件        5530  2016-01-04 15:54  spwm_two_close\28335_headers\DSP2833x_Examples.h
     文件        8431  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_GlobalPrototypes.h
     文件       15813  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_Gpio.h
     文件        7076  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_I2c.h
     文件        4079  2009-08-04 13:04  spwm_two_close\28335_headers\DSP2833x_I2c_defines.h
............此处省略150个文件信息

评论

共有 条评论