FFT アナライザ このプログラムの説明は,CQ出版社「トランジスタ技術」の2021年10月号から開始された連載記事「STM32マイコンではじめるPC計測」の中にあります.このプログラムといっしょに使うPC側のプログラムについても同誌を参照してください.

Dependencies:   Array_Matrix mbed SerialTxRxIntr DSP_ADDA UIT_FFT_Real Window

Revision:
0:e5fc70976c00
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/XferSpectrum.hpp	Thu Sep 09 08:52:33 2021 +0000
@@ -0,0 +1,36 @@
+//---------------------------------------------------------------------
+//  スペクトル解析の結果を PC へ転送するための XferBase の派生クラス
+//
+//  2021/07/11, Copyright (c) 2021 MIKAMI, Naoki
+//---------------------------------------------------------------------
+
+#include "XferBase.hpp"
+
+#ifndef XFER_SPECTRUM_DERIVED_HPP
+#define XFER_SPECTRUM_DERIVED_HPP
+
+class XferSpectrum : public XferBase
+{
+public:
+    // コンストラクタ
+    XferSpectrum(SerialRxTxIntr& rxTx, int size)
+        : XferBase(rxTx, size) {}
+
+private:
+    // スペクトル解析の結果を転送する形式に変換
+    //      yAbs    FFT の結果の絶対値
+    virtual void Convert(const float yAbs[])
+    {
+        const float MAX = 10000;
+        for (int n=0; n<SIZE_; n++)
+        {
+            float x = yAbs[n];
+            xn_[n] = (x > MAX) ? (uint16_t)MAX : (uint16_t)x; 
+        }
+    }
+    
+    // コピー・コンストラクタおよび代入演算子の禁止のため
+    XferSpectrum(const XferSpectrum&);
+    XferSpectrum& operator=(const XferSpectrum&);
+};
+#endif  // XFER_SPECTRUM_DERIVED_HPP
\ No newline at end of file