|
各位大侠,请教个问题,
cvi程序:如何在fft变换中将x轴的点数变换为频率,下面的程序如何改写,谢谢
static double *wave;//产生的波形
int CVICALLBACK CalFFT(int panel, int control, int event, void *callbackData, int eventData1, int eventData2)
{
double *Phase; //极坐标中的极角
double *Mag; //极坐标中的极径
double *Img; //虚部
int i;
switch(event)
{
case EVENT_COMMIT:
Img=malloc(samples*sizeof(double));
for(i=0;i<samples; i++)
Img=0;
Mag=malloc(samples*sizeof(double));
Phase=malloc(samples*sizeof(double));
FFT(wave,Img,samples);
ToPolar1D(wave, Img, samples, Mag, Phase);
DeleteGraphPlot(panelHandle, PANEL_GRAPH, -1, VAL_IMMEDIATE_DRAW);
PlotY(panelHandle, PANEL_GRAPH, Mag,samples, VAL_DOUBLE, VAL_FAT_LINE, VAL_EMPTY_SQUARE, VAL_DASH, 1, VAL_RED);
free(wave);
free(Img);
free(Phase);
break;
}
return 0;
} |
|