单片机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 482|回复: 0
收起左侧

TMS320F2812实现SVPWM的完整程序

[复制链接]
nobletill 发表于 2019-5-6 17:55 | 显示全部楼层 |阅读模式
  1. //###########################################################################
  2. //
  3. // FILE:        DSP281x_Ev.c
  4. //
  5. // TITLE:        DSP281x Event Manager Initialization & Support Functions.
  6. //
  7. //###########################################################################
  8. //
  9. //  Ver | dd mmm yyyy | Who  | Description of changes
  10. // =====|=============|======|===============================================
  11. //  1.00| 11 Sep 2003 | L.H. | No change since previous version (v.58 Alpha)
  12. //###########################################################################

  13. #include "DSP281x_Device.h"     // DSP281x Headerfile Include File
  14. #include "DSP281x_Examples.h"   // DSP281x Examples Include File

  15. //---------------------------------------------------------------------------
  16. // InitEv:
  17. //---------------------------------------------------------------------------
  18. // This function initializes to a known state.
  19. //
  20. void InitEv(void)
  21. {
  22.     EALLOW;
  23.    // Initalize EVA Timer1&Configure PWM1-PWM6
  24.         //EvaRegs.T1PR = 625;            // period=625×2/25M ,PWM=20KHz
  25.                 EvaRegs.T1PR = 781;            // period=781×2/25M ,PWM=16KHz
  26.                 EvaRegs.T1CNT = 0;              // Timer1 counter

  27.         //定时器控制寄存器A
  28.                 EvaRegs.GPTCONA.bit.TCMPOE=1;   // enable timer compare
  29.                 EvaRegs.GPTCONA.bit.T1PIN=0;    // timer compare output
  30.         //计时器比较寄存器
  31.     EvaRegs.T1CMPR=0;

  32.                 EvaRegs.EVAIMRA.bit.T1UFINT = 1;// enable Timer1 period interrupt
  33.                                                                         //EVA中断屏蔽寄存器
  34.                 EvaRegs.EVAIFRA.bit.T1UFINT=1;  // clear Timer1 period interrupt flag
  35.                                                                         //EVA中断标志寄存器
  36. /****************************************************
  37.   TMODE = continuous up/down count
  38.   Input clock prescaler= X/1 (X=HSPCLK)=25MHz
  39.   Timer enable ; Timer compare enable
  40. *****************************************************/
  41.                 EvaRegs.T1CON.all = 0x0802;     //连续增减计数,X/1        定时器尚未打开        
  42.     //Enable compare for PWM1-PWM6
  43.                 EvaRegs.CMPR1 = 781;
  44.                 EvaRegs.CMPR2 = 781;
  45.                 EvaRegs.CMPR3 = 781;

  46.                 EvaRegs.ACTRA.all = 0x0999;   // PWM1,2,3,4,5,6
  47.                 EvaRegs.DBTCONA.all = 0x0AEC; // 死区2.88us  9/(25/8)
  48.                 EvaRegs.COMCONA.all = 0xa600; //使能比较操作,不使能全局比较输出
  49. //******************  QEP初始化   ********************
  50.        // EvbRegs.T4CON.all=0x1870;
  51.         //        EvbRegs.T4CNT=0x0000;
  52.         //        EvbRegs.T4PR=0xffff;

  53.                 EvaRegs.T2CON.all=0x1870;
  54.                 EvaRegs.T2CNT=0x0000;
  55.                 EvaRegs.T2PR=0xffff;

  56.                 EvaRegs.T1CON.bit.TENABLE=0;
  57. //****************************************************
  58.                 EDIS;
  59. }        
  60.         
  61. //===========================================================================
  62. // No more.
  63. //===========================================================================
复制代码

0.png

全部资料51hei下载地址:
SVPWM_2812.rar (741.71 KB, 下载次数: 20)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51Hei单片机16群 联系QQ:125739409;技术交流QQ群7344883

Powered by 单片机教程网

快速回复 返回顶部 返回列表