ライブラリ "DSP_MultirateLinearphase" の使用例.

Dependencies:   mbed DSP_MultirateLinearphase

Revision:
12:ef52fea50d5e
Parent:
11:fd030cd609ad
--- a/main.cpp	Sun Dec 20 08:11:05 2020 +0000
+++ b/main.cpp	Wed Dec 22 08:01:53 2021 +0000
@@ -6,26 +6,29 @@
 //
 //  処理の内容:AD 変換器からの入力をそのまま DA 変換器に出力する
 //
-//  2020/12/20, Copyright (c) 2020 MIKAMI, Naoki
+//  2021/12/22, Copyright (c) 2021 MIKAMI, Naoki
 //--------------------------------------------------------------------------
 
 #include "MultirateLiPh.hpp"    // マルチレート処理用
-
-// 補間フィルタの係数として,デフォルト以外の係数を使う場合の例:
-//      以下の #define 文のいずれかを有効にする
-//#define FIR_INTERPOLATOR_ORDER94    // 94 次のフィルタで補間を行う場合
-//#define FIR_INTERPOLATOR_ORDER2     // 補間を行わない場合
-#include "coefficients.hpp"     // デフォルトの補間用フィルタの係数を使う場合は不要
-
 using namespace Mikami;
 #pragma diag_suppress 870   // マルチバイト文字使用の警告抑制のため
 
+#define FIR_INTERPOLATOR_DEFAULT
+// 補間フィルタの係数として,デフォルト以外の係数を使う場合の例:
+//      16 行目の #define 文を無効にし,以下の #define 文のいずれかを有効にする
+//#define FIR_INTERPOLATOR_ORDER94    // 94 次のフィルタで補間を行う場合
+//#define FIR_INTERPOLATOR_ORDER4     // 補間を行わない場合
+
 const float FS_ = 10;       // 入力の標本化周波数: 10 kHz
 
+#ifdef FIR_INTERPOLATOR_DEFAULT
 // 出力標本化周波数を4倍にするオブジェクト(デフォルトの補間フィルタ係数を使う場合)
 MultirateLiPh myAdDa_(FS_);
+#else
 // 次の行はデフォルト以外の補間用フィルタ係数を使う場合
-//MultirateLiPh myAdDa_(FS_, ORDER_, HK1_, HK2_, HK3_);
+#include "coefficients.hpp"     // デフォルトの補間用フィルタの係数を使う場合は不要
+MultirateLiPh myAdDa_(FS_, ORDER_, HK1_, HK2_, HK3_);
+#endif  // FIR_INTERPOLATOR_DEFAULT
 
 // 信号処理に割り当てられる処理時間を見積るために使用
 // 標本化周波数が 10 kHz の場合