找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4569|回復: 5
打印 上一主題 下一主題
收起左側

無刷直流電機dsp2812驅動代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:217343 發(fā)表于 2017-7-5 15:52 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
用于dsp2812


全部資料下載地址:
kongzhi.zip (111.05 KB, 下載次數(shù): 51)

dsp主程序預覽:

  1. #include"DSP28_Device.h "
  2. Uint32 intcount;
  3. int increase;
  4. int decrease;
  5. void InitSysCtrl(void)
  6. {
  7.     Uint16 i;
  8.     EALLOW;
  9.     SysCtrlRegs.WDCR = 0x0068;
  10.     SysCtrlRegs.WDCR=0x0068;
  11.     SysCtrlRegs.PLLCR = 0xA;
  12.     for(i=0; i<50000; i++){}
  13.     SysCtrlRegs.HISPCP.all=0x000l;
  14.     SysCtrlRegs.LOSPCP.all=0x0002;
  15.     SysCtrlRegs.PCLKCR.bit.EVAENCLK=1;
  16.     EDIS;
  17. }
  18. void InitGpio(void)
  19. {
  20.     EALLOW;
  21.     GpioMuxRegs.GPAMUX.bit.PWM1_GPIOA0=1;
  22.     GpioMuxRegs.GPAMUX.bit.PWM2_GPIOA1= 1;
  23.     EDIS;
  24. }
  25. void InitEv(void)
  26. {
  27.     EvaRegs.T1CON.bit.TMODE=1;
  28.     EvaRegs.T1CON.bit.TPS=1;
  29.     EvaRegs.T1CON.bit.TENABLE=0;
  30.     EvaRegs.T1CON.bit.TCLKS10=0;
  31.     EvaRegs.T1CON.bit.TECMPR=1;
  32.     EvaRegs.T1PR=0x493E;
  33.     EvaRegs.T1CNT=0;
  34.     EvaRegs.COMCONA.bit.CENABLE=1;
  35.     EvaRegs.COMCONA.bit.FCOMPOE=1;
  36.     EvaRegs.COMCONA.bit.CLD=2;
  37.     EvaRegs.DBTCONA.bit.DBT=10;
  38.     EvaRegs.DBTCONA.bit.EDBT1=1;
  39.     EvaRegs.DBTCONA.bit.DBTPS=4,
  40.     EvaRegs.ACTR.all = 0x0666 ;
  41.     EvaRegs.CMPR1 = 0x41EB;
  42.     EvaRegs.EVAIMRA.bit.T1PINT=1;
  43.     EvaRegs.EVAIFRA.bit.T1PINT=1;
  44. }
  45. interrupt void TlPINT_ISR(void)
  46. {
  47.     intcount++;
  48.     if(intcount>=1000)
  49.     {
  50.         if ((increase==1) &&(decrease==0))
  51.         {
  52.             EvaRegs.CMPR1=EvaRegs.CMPR1 + 938;
  53.             if(EvaRegs.CMPR1>= 0x41EB)
  54.             {
  55.                 EvaRegs.CMPR1=0x41EB;
  56.                 increase=0;
  57.                 decrease=1;
  58.             }
  59.         }
  60.         if((increase==0)&&(decrease==1))
  61.         {
  62.             EvaRegs.CMPR1=EvaRegs.CMPR1-938;
  63.             if(EvaRegs.CMPR1<=0x0753)
  64.             {
  65.                 EvaRegs.CMPR1=0x0753;
  66.                 increase=1;
  67.                 decrease=0;
  68.             }

  69.         }
  70.         intcount=0;
  71.     }
  72.     PieCtrl.PIEACK.all= PIEACK_GROUP1;
  73.     EvaRegs.EVAIFRA.bit.T1PINT=1  ;
  74.     EINT;

  75. }

  76. int main(void) {
  77.        
  78.     InitSysCtrl();
  79.     DINT;
  80.     IER=0x0000;
  81.     IFR=0x0000;
  82.     InitPieCtrl();
  83.     InitPieVectTable();
  84.     InitGpio();
  85.     InitEv();
  86.     intcount=0;
  87.     increase=0;
  88.     decrease=1;
  89.     PieCtrl.PIEIER2.bit.INTx4=1;
  90.     IER|=M_INT2;
  91.     EINT;
  92.     ERTM;
  93.     EvaRegs.T1CON.bit.TENABLE=1;
  94.     while(1)
  95.     {

  96.     }

  97. }
復制代碼


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:163931 發(fā)表于 2017-7-10 18:27 | 只看該作者
不錯的!很適合初學者學習!
回復

使用道具 舉報

板凳
ID:88957 發(fā)表于 2017-7-10 22:53 | 只看該作者
感謝分享@
回復

使用道具 舉報

地板
ID:120112 發(fā)表于 2017-9-6 15:24 | 只看該作者
感謝分享
回復

使用道具 舉報

5#
ID:250355 發(fā)表于 2017-11-17 11:10 | 只看該作者
感謝分享
回復

使用道具 舉報

6#
ID:399983 發(fā)表于 2018-10-12 11:30 | 只看該作者
加入到ccs、不能打開啊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表