⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2fft.c

📁 基于802.16d的OFDM下基2FFT的源码
💻 C
字号:
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <limits.h>


#define pi 3.1415926535
int index[256]=
{0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,
 240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,
 120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,
 180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,
 60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,
 210,50,178,114,242,10,138,74,202,42,170,106,234,26,
 154,90,218,58,186,122,250,6,134,70,198,38,166,102,
 230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,
 110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,
 161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,
 41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,
 197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,
 77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,
 131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,
 11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,
 251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,
 119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,
 191,127,255};
float cos_tab[128],sin_tab[128];
void sin_tab_cr();
void cos_tab_cr();
void dive(float dataR[],float dataI[],float dataRout[],float dataIout[],int index[]);
void fft1(float dataR[],float dataI[],float cos_tab[],float sin_tab[]);


main()
{
 
float a[256],b[256],c[256],d[256];


int i;
for(i=0;i<=255;i++)
    {a[i]=i;
     b[i]=i;
    }

 cos_tab_cr();
 sin_tab_cr();
dive(a,b,c,d,index);
fft1(c,d,cos_tab,sin_tab);

}
void dive(float dataR[],float dataI[],float dataRout[],float dataIout[],int index[])
{
/********** following code invert sequence ************/
int i;
for(i=0;i<256;i++)
{dataRout[i]=dataR[index[i]];
 dataIout[i]=dataI[index[i]];}
}





void sin_tab_cr()
{int j;
 for(j=0;j<128;j++)
    {sin_tab[j]=sin(pi*j/128);
    }
}
void cos_tab_cr()
{int j;
 for(j=0;j<128;j++)
    {cos_tab[j]=cos(pi*j/128);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -