1. #include "stdafx.h" 2. #include "Fft.h" 3. #include "math.h" 4. 5. const double MOD_MAX = 65535.0; 6. const double DISP_MAX = 1.0/255.0; 7. extern FILE *fp; 8. 9. 10. 11. 12. 13. //FFT 运算必须参数 14. int fft_point,fft_order,fft_divide,fft_window,fft_scale; 15. bool fft_cover; 16. float filter[7];//FIR 滤波参数 17. 18. extern FILE *fpIandQ; 19. extern bool m_bIqWrite; 20. double prFilter[256],piFilter[256]; 21. 22. 23. /************************************************************************************** 24. 0 RectangleWindow 矩形窗 25. FFT 变换结果为对称型,矩形窗是使信号突然截断,旁瓣会很大,且衰减较慢,旁瓣的第一个负 26. 峰值为主瓣的21%,第一个正峰值为主瓣的12.6%,第二个负峰值为主瓣的9%,效果一般,泄 27. 漏较大。 28. **************************************************************************************/ 29. double WINAPI RectangleWindow(int t) 30. { 31. double wt; 32. wt=1.0; 33. return wt; 34. } 35. 36. /************************************************************************************** 37. 1 TriangleWindow 三角窗,也称费杰(Fejer)窗,Bartlett 38. **************************************************************************************/ 39. double WINAPI TriangleWindow(int t) 40. { 41. 42. double wt; 43. wt=1-t/fft_point; 44. return wt; 45. } 46. 47. /************************************************************************************** 48. 2 HanningWindwo汉宁窗,即升余弦窗 49. **************************************************************************************/ 50. double WINAPI HanningWindow(int t) 51. { 52. double wt; 53. wt=(1-cos(2*PI*t/fft_point))/2; 54. return wt; 55. } 56. 57. /************************************************************************************** 58. 3 HammingWindow海明窗,即改进的升余弦窗 59. **************************************************************************************...