久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8799|回復(fù): 13
收起左側(cè)

F28335 SPWM源碼分享

  [復(fù)制鏈接]
ID:232960 發(fā)表于 2017-9-13 20:54 | 顯示全部樓層 |閱讀模式
分享一個F28335 SPWM源碼

源程序如下:
  1. #include "DSP2833x_Device.h"
  2. #include "DSP2833x_Examples.h"

  3. interrupt void EPwm1_isr();
  4. void InitEPwm1Example();
  5. void InitSpwm();

  6. #define N 400 //N:載波比
  7. Uint16 spwmcnt=0;    //對SPWM相位的計數(shù)
  8. unsigned int f_s=50; //f_s:調(diào)制信號頻率,
  9. unsigned Period=0;              //計數(shù)器周期值計算方法
  10. long int ftime=150000000;       //CPU頻率為150M=100 *100000
  11. const   float  M_ratio=0.8;    //SPWM調(diào)制比,可修改
  12. Uint16 CMPA_data[N];

  13. void main(void)
  14. {

  15.     Period=ftime/(f_s*N*2);  //對應(yīng)EPwm1 頻率為20Khz
  16.     InitSpwm();
  17.     InitSysCtrl();

  18.     DINT;

  19.     InitEPwm1Gpio();    //初始化EPwm的輸出口
  20.     IER=0X0000;
  21.     IFR=0X0000;
  22.    
  23.     InitPieVectTable();

  24.     EALLOW;
  25.     PieVectTable.EPWM1_INT=&EPwm1_isr;
  26.     EDIS;

  27.     EALLOW;
  28.     SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC=0;
  29.     EDIS;
  30.     InitEPwm1Example();           //初始化EPwm的配置
  31.     EALLOW;
  32.     SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC=1;
  33.     EDIS;

  34.     PieCtrlRegs.PIEIER3.bit.INTx1=1;    //使能EPwm1中斷

  35.     IER|=M_INT3;


  36.     EINT;
  37.     ERTM;

  38.     for(;;)
  39.     {
  40.     }
  41. }
  42. interrupt void EPwm1_isr()
  43. {
  44.     if(spwmcnt==N)
  45.     {
  46.         spwmcnt=0;
  47.     }
  48.     EPwm1Regs.CMPA.half.CMPA=CMPA_data[spwmcnt++];

  49.     EPwm1Regs.ETCLR.bit.INT=1;
  50.     PieCtrlRegs.PIEACK.all=PIEACK_GROUP3;
  51. }


  52. void InitEPwm1Example()
  53. {
  54.     EPwm1Regs.TBCTL.bit.CTRMODE=2;    //設(shè)置為向上向下計數(shù)模式
  55.     EPwm1Regs.TBPRD=Period;     //周期
  56.     EPwm1Regs.TBCTL.bit.HSPCLKDIV=0;   //高速分頻
  57.     EPwm1Regs.TBCTL.bit.CLKDIV=0;      //時基分頻
  58.     EPwm1Regs.AQCTLA.bit.ZRO=AQ_SET;   //
  59.     EPwm1Regs.AQCTLA.bit.CAU=AQ_CLEAR;
  60.     EPwm1Regs.AQCTLA.bit.CAD=AQ_SET;

  61.     EPwm1Regs.ETSEL.bit.INTSEL=ET_CTR_ZERO;
  62.     EPwm1Regs.ETSEL.bit.INTEN=1;
  63.     EPwm1Regs.ETPS.bit.INTPRD=1;
  64. }

  65. void InitSpwm()
  66. {
  67.     int i=0;
  68.     float sin_table[N]={
  69.             0.000000,0.015747,0.031489,0.047224,0.062948,0.078655,0.094343,0.110008,0.125646,0.141252,
  70.             0.156823,0.172356,0.187845,0.203288,0.218681,0.234020,0.249300,0.264519,0.279672,
  71.             0.294755,0.309766,0.324699,0.339553,0.354322,0.369003,0.383593,0.398087,0.412483,
  72.             0.426776,0.440964,0.455042,0.469008,0.482857,0.496587,0.510193,0.523673,0.537023,
  73.             0.550240,0.563320,0.576261,0.589059,0.601710,0.614213,0.626563,0.638758,0.650794,
  74.             0.662669,0.674380,0.685923,0.697297,0.708497,0.719522,0.730368,0.741034,0.751515,
  75.             0.761810,0.771917,0.781831,0.791552,0.801077,0.810403,0.819528,0.828450,0.837166,
  76.             0.845675,0.853974,0.862062,0.869935,0.877593,0.885033,0.892254,0.899254,0.906030,
  77.             0.912582,0.918908,0.925005,0.930874,0.936511,0.941917,0.947088,0.952025,0.956726,
  78.             0.961189,0.965414,0.969400,0.973146,0.976650,0.979912,0.982930,0.985706,0.988236,
  79.             0.990522,0.992562,0.994356,0.995903,0.997204,0.998257,0.999062,0.999620,0.999930,
  80.             0.999992,0.999806,0.999372,0.998691,0.997761,0.996584,0.995161,0.993490,0.991573,
  81.             0.989410,0.987002,0.984349,0.981452,0.978311,0.974928,0.971303,0.967437,0.963332,
  82.             0.958987,0.954405,0.949586,0.944532,0.939243,0.933721,0.927968,0.921985,0.915773,
  83.             0.909334,0.902670,0.895782,0.888671,0.881341,0.873791,0.866026,0.858045,0.849851,
  84.             0.841447,0.832834,0.824015,0.814991,0.805765,0.796340,0.786716,0.776898,0.766887,
  85.             0.756686,0.746298,0.735724,0.724968,0.714032,0.702919,0.691632,0.680173,0.668545,
  86.             0.656752,0.644796,0.632680,0.620407,0.607980,0.595403,0.582678,0.569808,0.556797,
  87.             0.543648,0.530365,0.516949,0.503406,0.489737,0.475947,0.462040,0.448017,0.433884,
  88.             0.419643,0.405298,0.390852,0.376310,0.361674,0.346948,0.332136,0.317242,0.302270,
  89.             0.287222,0.272104,0.256917,0.241667,0.226358,0.210991,0.195573,0.180106,0.164595,
  90.             0.149042,0.133453,0.117831,0.102179,0.086502,0.070804,0.055088,0.039358,0.023619,
  91.             0.007874,-0.007874,-0.023619,-0.039358,-0.055088,-0.070804,-0.086502,-0.102179,-0.117830,
  92.             -0.133453,-0.149042,-0.164595,-0.180106,-0.195573,-0.210991,-0.226357,-0.241667,-0.256917,
  93.             -0.272103,-0.287222,-0.302270,-0.317242,-0.332136,-0.346948,-0.361673,-0.376309,-0.390852,
  94.             -0.405297,-0.419643,-0.433884,-0.448017,-0.462040,-0.475947,-0.489737,-0.503405,-0.516949,
  95.             -0.530364,-0.543648,-0.556797,-0.569808,-0.582677,-0.595403,-0.607980,-0.620407,-0.632680,
  96.             -0.644796,-0.656752,-0.668545,-0.680173,-0.691631,-0.702919,-0.714032,-0.724968,-0.735724,
  97.             -0.746298,-0.756686,-0.766887,-0.776898,-0.786716,-0.796339,-0.805765,-0.814991,-0.824015,
  98.             -0.832834,-0.841447,-0.849851,-0.858045,-0.866025,-0.873791,-0.881341,-0.888671,-0.895782,
  99.             -0.902670,-0.909334,-0.915773,-0.921985,-0.927968,-0.933721,-0.939243,-0.944532,-0.949586,
  100.             -0.954405,-0.958987,-0.963332,-0.967437,-0.971303,-0.974928,-0.978311,-0.981451,-0.984349,
  101.             -0.987002,-0.989410,-0.991573,-0.993490,-0.995161,-0.996584,-0.997761,-0.998691,-0.999372,
  102.             -0.999806,-0.999992,-0.999930,-0.999620,-0.999062,-0.998257,-0.997204,-0.995903,-0.994356,
  103.             -0.992562,-0.990522,-0.988236,-0.985706,-0.982931,-0.979912,-0.976650,-0.973146,-0.969400,
  104.             -0.965415,-0.961189,-0.956726,-0.952025,-0.947088,-0.941916,-0.936511,-0.930874,-0.925005,
  105.             -0.918908,-0.912582,-0.906030,-0.899254,-0.892254,-0.885034,-0.877593,-0.869935,-0.862062,
  106.             -0.853974,-0.845675,-0.837166,-0.828450,-0.819528,-0.810403,-0.801077,-0.791553,-0.781832,
  107.             -0.771917,-0.761811,-0.751515,-0.741034,-0.730368,-0.719522,-0.708497,-0.697297,-0.685924,
  108.             -0.674380,-0.662669,-0.650794,-0.638758,-0.626563,-0.614213,-0.601710,-0.589059,-0.576261,
  109.             -0.563320,-0.550240,-0.537023,-0.523673,-0.510193,-0.496587,-0.482857,-0.469008,-0.455043,
  110.             -0.440964,-0.426777,-0.412483,-0.398087,-0.383593,-0.369003,-0.354322,-0.339553,-0.324700,
  111.             -0.309766,-0.294755,-0.279672,-0.264519,-0.249300,-0.234020,-0.218681,-0.203289,-0.187845,
  112.             -0.172356,-0.156823,-0.141252,-0.125646,-0.110009,-0.094344,-0.078656,-0.062948,-0.047224,
  113.             -0.031490,-0.015747,0
  114.     };   // 50hz正弦波離散化

  115.     for(i=0;i<N;i++)
  116.     {
  117.         CMPA_data[i]=(0.5+0.5*M_ratio*sin_table[i])*Period; //規(guī)則采樣計算公式 CMPA_data[i]=(0.5+0.5*M_ratio*sin_table[i])*Period

  118.     }
  119. }

復(fù)制代碼



評分

參與人數(shù) 3黑幣 +60 收起 理由
fhx9999 + 5 贊一個!
錦瑟年華722 + 5 贊一個!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:234805 發(fā)表于 2017-9-22 09:31 | 顯示全部樓層
樓主好人一枚
回復(fù)

使用道具 舉報

ID:234805 發(fā)表于 2017-9-22 09:32 | 顯示全部樓層
樓主好人一枚
回復(fù)

使用道具 舉報

ID:237562 發(fā)表于 2017-10-7 04:15 | 顯示全部樓層
Looks retty good, i will try to use it on a F28379D
回復(fù)

使用道具 舉報

ID:380348 發(fā)表于 2018-8-4 22:37 | 顯示全部樓層
這個很給力,贊一個
回復(fù)

使用道具 舉報

ID:430590 發(fā)表于 2018-11-21 15:32 | 顯示全部樓層
樓主程序里的正弦表是怎么算的??
回復(fù)

使用道具 舉報

ID:431166 發(fā)表于 2018-11-22 14:26 | 顯示全部樓層
樓主一生平安~~感謝
回復(fù)

使用道具 舉報

ID:325681 發(fā)表于 2019-2-18 08:36 | 顯示全部樓層
maomao貓 發(fā)表于 2018-11-21 15:32
樓主程序里的正弦表是怎么算的??

正弦表可以用MATLAB計算啊,我是這樣用的,
回復(fù)

使用道具 舉報

ID:508567 發(fā)表于 2019-4-10 10:53 | 顯示全部樓層
maomao貓 發(fā)表于 2018-11-21 15:32
樓主程序里的正弦表是怎么算的??

這個回答好像太晚,下載一個正弦表發(fā)生器或者用matlab采樣都是可以的。
回復(fù)

使用道具 舉報

ID:742944 發(fā)表于 2020-5-2 18:44 | 顯示全部樓層
先下載下來看看
回復(fù)

使用道具 舉報

ID:469861 發(fā)表于 2020-12-24 09:07 | 顯示全部樓層
好棒,贊一個
回復(fù)

使用道具 舉報

ID:575853 發(fā)表于 2021-4-19 10:10 | 顯示全部樓層
這svpwm?
回復(fù)

使用道具 舉報

ID:60645 發(fā)表于 2021-9-27 15:32 | 顯示全部樓層
代碼寫得不太好
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲午夜精品在线观看 | 天天干天天爱天天爽 | 欧美一区二区三区在线观看 | 久久久国产一区二区三区四区小说 | 国产精品久久久久久久久免费桃花 | 91精品国产91久久久久久最新 | 日韩一区二区三区精品 | 欧美日韩亚洲一区二区 | 久久国产精品72免费观看 | 黄色免费在线观看网址 | 狠狠涩| 国产一区 在线视频 | 毛片一区二区三区 | 狠狠的操 | 久久精品国产一区 | 日产精品久久久一区二区福利 | 黑人久久| 免费欧美 | 黄色国产大片 | 东京久久 | 午夜看看 | 成人免费在线播放视频 | 在线中文字幕日韩 | 精品久久久久久红码专区 | 日韩中文字幕在线 | 久久新| 国产精品黄视频 | 自拍偷拍亚洲视频 | 91美女在线观看 | 国产99久久精品一区二区永久免费 | 蜜桃视频在线观看免费视频网站www | 日本精品一区二区三区在线观看视频 | 久久在线 | 久久久国产一区二区三区四区小说 | 99久久精品国产毛片 | 国产99久久精品一区二区300 | 午夜视频在线免费观看 | 久久精品小视频 | 国产成人精品免高潮在线观看 | 色性av| 国产亚洲网站 |