FFT アナライザ このプログラムの説明は,CQ出版社「トランジスタ技術」の2021年10月号から開始された連載記事「STM32マイコンではじめるPC計測」の中にあります.このプログラムといっしょに使うPC側のプログラムについても同誌を参照してください.
Dependencies: Array_Matrix mbed SerialTxRxIntr DSP_ADDA UIT_FFT_Real Window
IIR_Filter/Coefs_IIR_LP.hpp@1:d9dbfbe95c8d, 2021-11-03 (annotated)
- Committer:
- MikamiUitOpen
- Date:
- Wed Nov 03 01:29:16 2021 +0000
- Revision:
- 1:d9dbfbe95c8d
- Parent:
- 0:e5fc70976c00
2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MikamiUitOpen | 0:e5fc70976c00 | 1 | //----------------------------------------------------- |
MikamiUitOpen | 0:e5fc70976c00 | 2 | // 縦続形 IIR フィルタの次数と係数の定義 |
MikamiUitOpen | 0:e5fc70976c00 | 3 | // |
MikamiUitOpen | 1:d9dbfbe95c8d | 4 | // 2021/10/08, Copyright (c) 2021 MIKAMI, Naoki |
MikamiUitOpen | 0:e5fc70976c00 | 5 | //----------------------------------------------------- |
MikamiUitOpen | 0:e5fc70976c00 | 6 | |
MikamiUitOpen | 0:e5fc70976c00 | 7 | #include "Biquad.hpp" |
MikamiUitOpen | 0:e5fc70976c00 | 8 | |
MikamiUitOpen | 0:e5fc70976c00 | 9 | // FFT アナライザで使うフィルタ |
MikamiUitOpen | 0:e5fc70976c00 | 10 | // 標本化周波数が 102.4 kHz の場合,5.24 kHz 以上で |
MikamiUitOpen | 0:e5fc70976c00 | 11 | // 少なくとも 60 dB 減衰させる LPF |
MikamiUitOpen | 0:e5fc70976c00 | 12 | |
MikamiUitOpen | 0:e5fc70976c00 | 13 | // 低域通過フィルタ |
MikamiUitOpen | 0:e5fc70976c00 | 14 | // 連立チェビシェフ特性 |
MikamiUitOpen | 0:e5fc70976c00 | 15 | // 次数 : 10 次 |
MikamiUitOpen | 0:e5fc70976c00 | 16 | // 標本化周波数:102.4000 kHz |
MikamiUitOpen | 0:e5fc70976c00 | 17 | // 遮断周波数 : 5.0000 kHz |
MikamiUitOpen | 0:e5fc70976c00 | 18 | // 通過域のリップル: 0.50 dB |
MikamiUitOpen | 0:e5fc70976c00 | 19 | // 阻止域の減衰量 :60.00 dB |
MikamiUitOpen | 0:e5fc70976c00 | 20 | |
MikamiUitOpen | 0:e5fc70976c00 | 21 | const int ORDER1_ = 10; |
MikamiUitOpen | 0:e5fc70976c00 | 22 | const Biquad::Coefs CK1_[] = { |
MikamiUitOpen | 0:e5fc70976c00 | 23 | { 1.820963E+00f, -8.355312E-01f, -9.111580E-01f, 1.0f}, // 1段目 |
MikamiUitOpen | 0:e5fc70976c00 | 24 | { 1.853721E+00f, -9.012503E-01f, -1.783341E+00f, 1.0f}, // 2段目 |
MikamiUitOpen | 0:e5fc70976c00 | 25 | { 1.881627E+00f, -9.570190E-01f, -1.871513E+00f, 1.0f}, // 3段目 |
MikamiUitOpen | 0:e5fc70976c00 | 26 | { 1.895648E+00f, -9.843304E-01f, -1.892515E+00f, 1.0f}, // 4段目 |
MikamiUitOpen | 0:e5fc70976c00 | 27 | { 1.902771E+00f, -9.961831E-01f, -1.898312E+00f, 1.0f}}; // 5段目 |
MikamiUitOpen | 0:e5fc70976c00 | 28 | const float G01_ = 1.232249E-03f; // 利得定数 |
MikamiUitOpen | 0:e5fc70976c00 | 29 | |
MikamiUitOpen | 0:e5fc70976c00 | 30 | // 白色雑音発生器で使うフィルタ |
MikamiUitOpen | 1:d9dbfbe95c8d | 31 | // 標本化周波数が 102.4 kHz の場合, |
MikamiUitOpen | 1:d9dbfbe95c8d | 32 | // 102.4/(4π) ≒ 8.15 kHz 以上で |
MikamiUitOpen | 0:e5fc70976c00 | 33 | // 少なくとも 60 dB 減衰させる LPF |
MikamiUitOpen | 0:e5fc70976c00 | 34 | |
MikamiUitOpen | 0:e5fc70976c00 | 35 | // 低域通過フィルタ |
MikamiUitOpen | 0:e5fc70976c00 | 36 | // 連立チェビシェフ特性 |
MikamiUitOpen | 0:e5fc70976c00 | 37 | // 次数 : 6 次 |
MikamiUitOpen | 0:e5fc70976c00 | 38 | // 標本化周波数:102.4000 kHz |
MikamiUitOpen | 0:e5fc70976c00 | 39 | // 遮断周波数 : 5.0000 kHz |
MikamiUitOpen | 0:e5fc70976c00 | 40 | // 通過域のリップル: 0.50 dB |
MikamiUitOpen | 0:e5fc70976c00 | 41 | // 阻止域の減衰量 :60.00 dB |
MikamiUitOpen | 0:e5fc70976c00 | 42 | const int ORDER2_ = 6; |
MikamiUitOpen | 0:e5fc70976c00 | 43 | const Biquad::Coefs CK2_[] = { |
MikamiUitOpen | 0:e5fc70976c00 | 44 | { 1.794327E+00f, -8.134116E-01f, -6.466692E-01f, 1.0f}, // 1段目 |
MikamiUitOpen | 0:e5fc70976c00 | 45 | { 1.830789E+00f, -8.923580E-01f, -1.704269E+00f, 1.0f}, // 2段目 |
MikamiUitOpen | 0:e5fc70976c00 | 46 | { 1.874859E+00f, -9.684694E-01f, -1.812154E+00f, 1.0f}}; // 3段目 |
MikamiUitOpen | 0:e5fc70976c00 | 47 | const float G02_ = 1.381274E-03f; // 利得定数 |