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
MultirateLiPhCoefs.cpp@8:356d0c5f97c3, 2020-11-28 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Sat Nov 28 02:27:00 2020 +0000
- Revision:
- 8:356d0c5f97c3
- Parent:
- 6:202a7610f937
- Child:
- 9:9f391b2d51be
9
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:79c0b1e2fd10 | 1 | //------------------------------------------------------------------- |
MikamiUitOpen | 3:59af3dfa0595 | 2 | // デフォルトの補間用フィルタの係数 |
MikamiUitOpen | 8:356d0c5f97c3 | 3 | // この係数は,入力の標本化周波数を 10 kHz, |
MikamiUitOpen | 8:356d0c5f97c3 | 4 | // 出力の標本化周波数を 40 kHz として設計した |
MikamiUitOpen | 0:79c0b1e2fd10 | 5 | // |
MikamiUitOpen | 8:356d0c5f97c3 | 6 | // 2020/11/28, Copyright (c) 2020 MIKAMI, Naoki |
MikamiUitOpen | 0:79c0b1e2fd10 | 7 | //------------------------------------------------------------------- |
MikamiUitOpen | 0:79c0b1e2fd10 | 8 | |
MikamiUitOpen | 0:79c0b1e2fd10 | 9 | #include "MultirateLiPh.hpp" |
MikamiUitOpen | 0:79c0b1e2fd10 | 10 | |
MikamiUitOpen | 4:c233f2db4652 | 11 | namespace Mikami |
MikamiUitOpen | 4:c233f2db4652 | 12 | { |
MikamiUitOpen | 4:c233f2db4652 | 13 | // 使用窓関数 Kaiser 窓 |
MikamiUitOpen | 4:c233f2db4652 | 14 | // 標本化周波数 (kHz) 40.000000 |
MikamiUitOpen | 8:356d0c5f97c3 | 15 | // 次数 70 |
MikamiUitOpen | 4:c233f2db4652 | 16 | // 種類 LPF |
MikamiUitOpen | 4:c233f2db4652 | 17 | // 遮断周波数 (kHz) 5.000000 |
MikamiUitOpen | 8:356d0c5f97c3 | 18 | // 減衰量 (dB) 40.00 |
MikamiUitOpen | 8:356d0c5f97c3 | 19 | const int MultirateLiPh::ORDER_ = 70; |
MikamiUitOpen | 4:c233f2db4652 | 20 | const float MultirateLiPh::HK1_[] = { |
MikamiUitOpen | 8:356d0c5f97c3 | 21 | 3.806160E-03f, -7.410556E-03f, 1.260559E-02f, -1.994242E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 22 | 3.036776E-02f, -4.579744E-02f, 7.095016E-02f, -1.214690E-01f, |
MikamiUitOpen | 8:356d0c5f97c3 | 23 | 2.969901E-01f, 8.992744E-01f, -1.749060E-01f, 9.096828E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 24 | -5.663444E-02f, 3.726704E-02f, -2.468324E-02f, 1.596038E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 25 | -9.780624E-03f, 5.435560E-03f}; |
MikamiUitOpen | 4:c233f2db4652 | 26 | const float MultirateLiPh::HK2_[] = { |
MikamiUitOpen | 8:356d0c5f97c3 | 27 | 6.477720E-03f, -1.208128E-02f, 2.009782E-02f, -3.140681E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 28 | 4.757964E-02f, -7.194132E-02f, 1.131902E-01f, -2.034948E-01f, |
MikamiUitOpen | 8:356d0c5f97c3 | 29 | 6.336764E-01f, 6.336764E-01f, -2.034948E-01f, 1.131902E-01f, |
MikamiUitOpen | 8:356d0c5f97c3 | 30 | -7.194132E-02f, 4.757964E-02f, -3.140681E-02f, 2.009782E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 31 | -1.208128E-02f, 6.477720E-03f}; |
MikamiUitOpen | 4:c233f2db4652 | 32 | const float MultirateLiPh::HK3_[] = { |
MikamiUitOpen | 8:356d0c5f97c3 | 33 | 5.435560E-03f, -9.780624E-03f, 1.596038E-02f, -2.468324E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 34 | 3.726704E-02f, -5.663444E-02f, 9.096828E-02f, -1.749060E-01f, |
MikamiUitOpen | 8:356d0c5f97c3 | 35 | 8.992744E-01f, 2.969901E-01f, -1.214690E-01f, 7.095016E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 36 | -4.579744E-02f, 3.036776E-02f, -1.994242E-02f, 1.260559E-02f, |
MikamiUitOpen | 8:356d0c5f97c3 | 37 | -7.410556E-03f, 3.806160E-03f}; |
MikamiUitOpen | 4:c233f2db4652 | 38 | } |