ライブラリ "DSP_MultirateLinearphase" の使用例.
Dependencies: mbed DSP_MultirateLinearphase
Diff: main.cpp
- 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 の場合