FFT によるスペクトル解析器
Dependencies: Array_Matrix mbed SerialTxRxIntr UIT_FFT_Real DSP_ADDA
FFT_Analyzer.hpp
00001 //------------------------------------------------------- 00002 // FFT を使ってスペクトル解析を行うクラス(ヘッダ) 00003 // 00004 // 2020/11/07, Copyright (c) 2020 MIKAMI, Naoki 00005 //------------------------------------------------------- 00006 00007 #ifndef FFT_ANALYZER_HPP 00008 #define FFT_ANALYZER_HPP 00009 00010 #include "Array.hpp" 00011 #include "fftReal.hpp" 00012 #include "Blackman.hpp" 00013 00014 namespace Mikami 00015 { 00016 class FftAnalyzer 00017 { 00018 public: 00019 // nFft: FFT のデータ点の数 00020 FftAnalyzer(int nFft); 00021 virtual ~FftAnalyzer() {} 00022 void Execute(const Array<float> &xn, Array<float> &absFt); 00023 00024 private: 00025 const int N_FFT_; 00026 00027 FftReal fft_; 00028 BlackmanWindow wHm_; 00029 00030 Array<float> xData_; // 解析対象の時系列データ 00031 Array<float> wData_; // 窓掛けされたデータ 00032 Array<Complex> yFft_; // FFT の結果 00033 00034 // コピー・コンストラクタおよび代入演算子の禁止のため 00035 FftAnalyzer(const FftAnalyzer& ); 00036 FftAnalyzer& operator=(const FftAnalyzer& ); 00037 }; 00038 } 00039 #endif // FFT_ANALYZER_HPP
Generated on Fri Jul 15 2022 00:11:09 by 1.7.2