STM32F446 内蔵の DAC から出力する際に,補間フィルタを利用し,標本化周波数を入力の際の4倍の標本化周波数で出力するためのライブラリ.このライブラリを登録した際のプログラム: Demo_DSP_ADDA_Multirate. Library for outputting from built-in DAC in STM32F446 using interpolation filter at sampling frequency of 4 times in case of input.
Dependencies: Array_Matrix DSP_ADDA
Dependents: Demo_DSP_ADDA_Multirate DSP_AD_DA_Multirate DSP_GraphicEqualizerB DSP_VariableLHpfB ... more
Diff: MultirateLiPh.cpp
- Revision:
- 9:9f391b2d51be
- Parent:
- 8:356d0c5f97c3
- Child:
- 11:91190380ca3c
--- a/MultirateLiPh.cpp Sat Nov 28 02:27:00 2020 +0000 +++ b/MultirateLiPh.cpp Sun Dec 06 07:21:23 2020 +0000 @@ -2,7 +2,7 @@ // 出力を 4 倍にアップサンプリングするクラス // 補間処理で使うフィルタ:直線位相 FIR フィルタ // -// 2020/11/28, Copyright (c) 2020 MIKAMI, Naoki +// 2020/12/06, Copyright (c) 2020 MIKAMI, Naoki //----------------------------------------------------------- #include "MultirateLiPh.hpp" @@ -15,10 +15,7 @@ : indexW_(0), FIR_LOOP_((ORDER_+2)/UR_), CENTER_((ORDER_+2)/(UR_*2)), vn_((ORDER_+2)/UR_, 0.0f), h1_((ORDER_+2)/UR_, HK1_), h2_((ORDER_+2)/UR_, HK2_), h3_((ORDER_+2)/UR_, HK3_) - { - MBED_ASSERT((ORDER_ % UR_) == 2); - Init(fSampling, pin, adc); - } + { Init(fSampling, pin, adc); } // コンストラクタ(デフォルト以外の補間フィルタの係数を使う場合) MultirateLiPh::MultirateLiPh(float fSampling, int order, @@ -28,10 +25,7 @@ : indexW_(0), FIR_LOOP_((order+2)/UR_), CENTER_((order+2)/(UR_*2)), vn_((order+2)/UR_, 0.0f), h1_((order+2)/UR_, hk1), h2_((order+2)/UR_, hk2), h3_((order+2)/UR_, hk3) - { - MBED_ASSERT((order % UR_) == 2); - Init(fSampling, pin, adc); - } + { Init(fSampling, pin, adc); } // 標本化の実行開始 void MultirateLiPh::Start(void (*Func)())