ST32中采集交流信号,ad采集后进行fft变换

2019-07-21 05:43发布

/***************¼ÆËã·ùÖµ*****************/有哪位能详细解释以下程序,除以32768,以及乘以65536时什么意思,其实一直不明白fft变换后的结果是到底是什么,是怎么正式的显示采集的交流值啊

void PowerMag(u16 FFT_NPT)  
{
s16 lx, ly;
u32 i;
float mag, x, y;

for (i = 0; i < FFT_NPT/2; i++ )
{
  lx = (output[i]<<16)>>16;
  ly = (output[i]>>16);
  
   x = FFT_NPT*((float)lx)/32768;
   y = FFT_NPT*((float)ly)/32768;
  mag = sqrt(x*x+y*y)/FFT_NPT;  
  Mag[i] = (u32)(mag*65536);  
}
Mag[0] = Mag[0]/2;
}



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。