Nucleo-F446 による Weaver 変調器を使う周波数変換器.100 Hz 高い方へシフトする. DA変換器にデータを送る際は 4 倍にアップ・サンプリング.
Dependencies: mbed SerialTxRxIntr F446_AD_DA_Multirate
Coefficients.hpp
- Committer:
- MikamiUitOpen
- Date:
- 2019-01-20
- Revision:
- 0:7ac4d82ec952
File content as of revision 0:7ac4d82ec952:
//-------------------------------------------------------------- // Weaver 変調器を使う周波数シフタで使っているフィルタの係数 //-------------------------------------------------------------- #include "Biquad.hpp" using namespace Mikami; //-------------------------------------------------------------- // 入力帯域制限のための帯域通過フィルタの係数 //-------------------------------------------------------------- // 帯域通過フィルタ // 連立チェビシェフ特性 // 次数 : 8 次 // 標本化周波数: 10.00 kHz // 遮断周波数1: 0.10 kHz // 遮断周波数2: 4.50 kHz // 通過域のリップル: 0.50 dB // 阻止域の減衰量 :40.00 dB const int ORDER_BP_ = 8; // 次数 const Biquad cBp_[ORDER_BP_/2] = { Biquad(-1.372774E+00f, -5.370704E-01f, 1.993219E+00f, 1.0f), // 1段目 Biquad( 1.873134E+00f, -8.814802E-01f, -1.999733E+00f, 1.0f), // 2段目 Biquad(-1.835442E+00f, -9.243853E-01f, 1.966710E+00f, 1.0f), // 3段目 Biquad( 1.980487E+00f, -9.841793E-01f, -1.998679E+00f, 1.0f)}; // 4段目 const float g0Bpf_ = 6.024895E-01f; // 利得定数 //-------------------------------------------------------------- // Weaver 変調器で使う低域通過フィルタの係数 //-------------------------------------------------------------- // 低域通過フィルタ // 連立チェビシェフ特性 // 次数 : 8 次 // 標本化周波数: 10.00 kHz // 遮断周波数 : 2.20 kHz // 通過域のリップル: 0.50 dB // 阻止域の減衰量 :40.00 dB const int ORDER_LP_ = 8; // 次数 const Biquad cLp_[ORDER_LP_/2] = { Biquad( 8.858544E-01f, -3.257468E-01f, 1.445936E+00f, 1.0f), // 1段目 Biquad( 5.719715E-01f, -7.185630E-01f, 1.417300E-01f, 1.0f), // 2段目 Biquad( 4.119452E-01f, -9.208622E-01f, -2.266002E-01f, 1.0f), // 3段目 Biquad( 3.685487E-01f, -9.845005E-01f, -3.103306E-01f, 1.0f)}; // 4段目 const float g0Lpf_ = 5.250112E-02f; // 利得定数