CQエレクトロニクス・セミナ「実習・マイコンを動かしながら学ぶディジタル・フィルタ」で使うプログラム.1次IIRフィルタの係数をターミナルから変更できる. http://seminar.cqpub.co.jp/ccm/ES18-0020
Dependencies: mbed Array_Matrix BSP_DISCO_F746NG LCD_DISCO_F746NG TS_DISCO_F746NG
MyFiles/DelayedEnabler.hpp
- Committer:
- MikamiUitOpen
- Date:
- 2017-10-09
- Revision:
- 0:47718d3154d9
File content as of revision 0:47718d3154d9:
//----------------------------------------------------------- // ある機能を一定の時間が経過するまでは無効にし,その後有効に // するためのクラス // // 2017/08/21, Copyright (c) 2017 MIKAMI, Naoki //----------------------------------------------------------- #ifndef DELAYED_ENABLER_HPP #define DELAYED_ENABLER_HPP #include "mbed.h" namespace Mikami { class DelayedEnabler { public: DelayedEnabler(float delayTime = 0.3f) : DELAY_TIME_(delayTime), enable_(true) {} // このメンバ関数の実行直後から指定された時間,IsEnabled() は false を // 返し,その後 InEnabled() は true を返す void Disable() { enable_ = false; Enabler_.attach(callback(this, &DelayedEnabler::TimeoutIsr), DELAY_TIME_); } bool IsEnabled() { return enable_; } private: const float DELAY_TIME_; // 無効になっている時間 __IO bool enable_; Timeout Enabler_; // 有効にする(Timeout 割り込みに対応する ISR) void TimeoutIsr() { enable_ = true; } }; } #endif // DELAYED_ENABLER_HPP