SD card player with variable cotoff frequency lowpass and highpass IIR filter. SD カードの *.wav ファイルのオーディオ信号を,遮断周波数可変 IIR 低域通過および高域通過フィルタを通して,ボードに搭載されているCODEC で出力する.このプログラムについては,CQ出版社インターフェース誌 2018年8月号で解説している.

Dependencies:   F746_GUI F746_SAI_IO FrequencyResponseDrawer SD_PlayerSkeleton

Committer:
MikamiUitOpen
Date:
Sun Oct 02 10:40:44 2016 +0000
Revision:
2:dcaee06f6ccb
Parent:
1:b0cd16aa1a78
Child:
3:9357ca2491be
3

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:92078e38d79f 1 //--------------------------------------------------------------
MikamiUitOpen 0:92078e38d79f 2 // 可変フィルタ処理付き SD オーディオプレーヤー
MikamiUitOpen 0:92078e38d79f 3 // SD のファイル: *.wav
MikamiUitOpen 0:92078e38d79f 4 // PCM,16 ビットステレオ,標本化周波数 44.1 kHz
MikamiUitOpen 0:92078e38d79f 5 // 可変フィルタ ---- IIR 低域通過および高域通過フィルタ
MikamiUitOpen 2:dcaee06f6ccb 6 // 出力:モノラル(L+R を左右チャンネルに出力する)
MikamiUitOpen 0:92078e38d79f 7 //
MikamiUitOpen 2:dcaee06f6ccb 8 // 2016/10/02, Copyright (c) 2016 MIKAMI, Naoki
MikamiUitOpen 0:92078e38d79f 9 //--------------------------------------------------------------
MikamiUitOpen 0:92078e38d79f 10
MikamiUitOpen 0:92078e38d79f 11 #include "VariableIirFilter.hpp"
MikamiUitOpen 0:92078e38d79f 12
MikamiUitOpen 0:92078e38d79f 13 using namespace Mikami;
MikamiUitOpen 0:92078e38d79f 14
MikamiUitOpen 0:92078e38d79f 15 int main()
MikamiUitOpen 0:92078e38d79f 16 {
MikamiUitOpen 0:92078e38d79f 17 const int FS = AUDIO_FREQUENCY_44K; // 標本化周波数
MikamiUitOpen 0:92078e38d79f 18
MikamiUitOpen 0:92078e38d79f 19 // フィルタの設計と周波数特性描画用
MikamiUitOpen 2:dcaee06f6ccb 20 BtwthDesignerDrawer drawerObj(
MikamiUitOpen 2:dcaee06f6ccb 21 55, // グラフの左端の位置
MikamiUitOpen 2:dcaee06f6ccb 22 230, // グラフの下端の位置
MikamiUitOpen 0:92078e38d79f 23 3, // 1 dB 当たりのピクセル数
MikamiUitOpen 0:92078e38d79f 24 FS, // 標本化周波数
MikamiUitOpen 0:92078e38d79f 25 6, // フィルタの次数
MikamiUitOpen 0:92078e38d79f 26 400, // 最初に与える遮断周波数
MikamiUitOpen 0:92078e38d79f 27 200, // 遮断周波数の最小値
MikamiUitOpen 0:92078e38d79f 28 10000, // 遮断周波数の最大値
MikamiUitOpen 0:92078e38d79f 29 BilinearDesign::LPF); // 低域通過フィルタ
MikamiUitOpen 0:92078e38d79f 30
MikamiUitOpen 0:92078e38d79f 31 VariableIirFilter myPlayer("Variable LPF and HPF",
MikamiUitOpen 0:92078e38d79f 32 FS, drawerObj);
MikamiUitOpen 0:92078e38d79f 33 myPlayer.Execute();
MikamiUitOpen 0:92078e38d79f 34 }