• 大小: 25KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-06
  • 语言: 其他
  • 标签: SPWM,28335  

资源简介

基于DSP28335的一个关于带死区的SPWM代码,规则采样。

资源截图

代码片段和文件信息

// TI File $Revision: /main/3 $
// Checkin $Date: March 16 2007   08:37:30 $
//###########################################################################
//
// FILE: DSP2833x_CpuTimers.c
//
// title: CPU 32-bit Timers Initialization & Support Functions.
//
// NOTES:   CpuTimer1 and CpuTimer2 are reserved for use with DSP BIOS and
//          other realtime operating systems.
//
//          Do not use these two timers in your application if you ever plan
//          on integrating DSP-BIOS or another realtime OS.
//
//
//###########################################################################
// $TI Release: DSP2833x Header Files V1.01 $
// $Release Date: September 26 2007 $
//###########################################################################

#include “DSP2833x_Device.h“     // Headerfile Include File
#include “DSP2833x_Examples.h“   // Examples Include File

struct CPUTIMER_VARS CpuTimer0;

// CpuTimer 1 and CpuTimer2 are used by DSP BIOS & other RTOS. Comment out if using DSP BIOS or other RTOS.
struct CPUTIMER_VARS CpuTimer1;
struct CPUTIMER_VARS CpuTimer2;

//---------------------------------------------------------------------------
// InitCpuTimers:
//---------------------------------------------------------------------------
// This function initializes all three CPU timers to a known state.
//
void InitCpuTimers(void)
{
    // CPU Timer 0
// Initialize address pointers to respective timer registers:
CpuTimer0.RegsAddr = &CpuTimer0Regs;
// Initialize timer period to maximum:
CpuTimer0Regs.PRD.all  = 0xFFFFFFFF;
// Initialize pre-scale counter to divide by 1 (SYSCLKOUT):
CpuTimer0Regs.TPR.all  = 0;
CpuTimer0Regs.TPRH.all = 0;
// Make sure timer is stopped:
CpuTimer0Regs.TCR.bit.TSS = 1;
// Reload all counter register with period value:
CpuTimer0Regs.TCR.bit.TRB = 1;
// Reset interrupt counters:
CpuTimer0.InterruptCount = 0;


// CpuTimer 1 and CpuTimer2 are reserved for DSP BIOS & other RTOS
// Do not use these two timers if you ever plan on integrating
// DSP-BIOS or another realtime OS.
//
// Initialize address pointers to respective timer registers:
CpuTimer1.RegsAddr = &CpuTimer1Regs;
CpuTimer2.RegsAddr = &CpuTimer2Regs;
// Initialize timer period to maximum:
CpuTimer1Regs.PRD.all  = 0xFFFFFFFF;
CpuTimer2Regs.PRD.all  = 0xFFFFFFFF;
    // Initialize pre-scale counter to divide by 1 (SYSCLKOUT):
CpuTimer1Regs.TPR.all  = 0;
CpuTimer1Regs.TPRH.all = 0;
CpuTimer2Regs.TPR.all  = 0;
CpuTimer2Regs.TPRH.all = 0;
    // Make sure timers are stopped:
CpuTimer1Regs.TCR.bit.TSS = 1;
CpuTimer2Regs.TCR.bit.TSS = 1;
// Reload all counter register with period value:
CpuTimer1Regs.TCR.bit.TRB = 1;
CpuTimer2Regs.TCR.bit.TRB = 1;
// Reset interrupt counters:
CpuTimer1.InterruptCount = 0;
CpuTimer2.InterruptCount = 0;

}

//---------------------------------------------------------------------------
// ConfigCpuTimer:
//-------------

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-03-24 20:26  代码1\
     文件        6955  2013-10-31 06:37  代码1\28335_RAM_lnk.cmd
     文件        1434  2007-09-26 10:23  代码1\DSP2833x_ADC_cal.asm
     文件        3263  2007-09-26 10:23  代码1\DSP2833x_CodeStartBranch.asm
     文件        4311  2007-09-26 10:23  代码1\DSP2833x_CpuTimers.c
     文件       30673  2007-09-26 10:23  代码1\DSP2833x_DefaultIsr.c
     文件       11446  2018-03-15 21:57  代码1\DSP2833x_EPwm.c
     文件       11208  2016-11-07 07:50  代码1\DSP2833x_GlobalVariableDefs.c
     文件        8682  2015-03-04 17:26  代码1\DSP2833x_Headers_nonBIOS.cmd
     文件        2566  2007-09-26 10:23  代码1\DSP2833x_PieCtrl.c
     文件        7196  2007-09-26 10:23  代码1\DSP2833x_PieVect.c
     文件       11505  2013-12-06 20:05  代码1\DSP2833x_SysCtrl.c
     文件        2723  2007-09-26 10:23  代码1\DSP2833x_usDelay.asm
     文件        7588  2018-03-22 18:49  代码1\main.c

评论

共有 条评论

相关资源