![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Vowel synthesizer using digital resonators. This program can run without LCD display. ディジタル共振器を使った合成母音ジェネレータ.LCD表示器なしでも動く.
Dependencies: UITDSP_ADDA UIT_ACM1602NI UIT_AQM1602 mbed
Diff: Resonator.hpp
- Revision:
- 5:0396de26b449
- Parent:
- 4:dd2ec72068d0
diff -r dd2ec72068d0 -r 0396de26b449 Resonator.hpp --- a/Resonator.hpp Wed Dec 17 08:22:30 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,52 +0,0 @@ -//------------------------------------------------------------------------------ -// 音声合成で使う共振器(ヘッダ) -// 作成者:三上直樹,2013/11/27 作成,(c)三上直樹 2013 -//------------------------------------------------------------------------------ - -#include "mbed.h" - -#ifndef RESONATOR_HPP -#define RESONATOR_HPP - -namespace Mikami -{ - class Resonator - { - private: - static float piT_; - float a1_, a2_, b0_; - float yn1_, yn2_; - - // コンストラクタに共通な初期化 - void Initialize(float fr, float bw, float fs); - - public: - // 共振周波数と帯域幅に対応する構造体 - struct FrBw { float fr, bw; }; - - // デフォルト・コンストラクタ - Resonator() {} - - // 初期化を行うコンストラクタ - Resonator(float fr, float bw, float fs) - { Initialize(fr, bw, fs); } - - // 初期化を行うコンストラクタ(構造体使用) - Resonator(FrBw fb, float fs) - { Initialize(fb.fr, fb.bw, fs); } - - // 共振器のパラメータの設定 - void Set(float fr, float bw); - - // 共振器のパラメータの設定(構造体使用) - void Set(FrBw fb) { Set(fb.fr, fb.bw); } - - // 内部の遅延器をクリア - void Clear() { yn1_ = 0; yn2_ = 0; } - - // 共振器に対応する処理の実行 - float Execute(float xin); - }; -} -#endif // RESONATOR_HPP -