Timer

(2014.6.23 作成)

(2014.7.31 更新)

(2015.8.30 更新)

 指定時間間隔でクラス内のローカル変数をカウントアップしてゆくクラスです。Arduinoの場合では内部でmillis, microsを呼んでいるだけなのできわめて制約が多いです。一方STM32は内部のTIMペリフェラルを直接使用していますので、自由度が高くなっています。

 このページで説明するITimerクラスを抽象クラスとして各マイコンボードごとにTimerクラスを作成しています。実際に使用する場合はマイコン毎のTimerクラスを使用してください。

ヘッダ

DKS_Timer_Base.h

列挙型

TimeUint

TimeUnit_MilliSec ms 単位
TimeUnit_MicroSec us 単位

関数一覧

コンストラクタ

プロトタイプ

ITimer(

   const DKS::TimeUint &timeUnit   

            =DKS::TimeUnit_MilliSec);

戻り値

なし

引数

DKS::TimeUint &timeUnit

タイマの動作単位

usまたはms

TimeUnit型

備考


カウントアップを開始する

プロトタイプ void Start(void) = 0;
戻り値

なし

引数

なし

備考

Arduinoでは機能しません。

カウントアップを停止する

プロトタイプ void Stop(void) = 0;
戻り値

なし

引数

なし

備考

Arduinoでは機能しません。

カウンタ値を0に戻す

プロトタイプ void Reset(void) = 0;
戻り値

なし

引数

なし

備考

Arduinoでは機能しません。

カウンタ動作時は無視されます。

カウントされた時間を返す

プロトタイプ float Duration(void)const = 0;
戻り値

計測が開始されてからの時間を秒単位で返す。

引数

なし

備考

 

カウント値を返す

プロトタイプ uint64_t ReadCounter(void)const = 0;
戻り値

カウント値を返す。

引数

なし

備考

 

タイマーのカウント間隔を返す

プロトタイプ float GetInterval(void)const=0
戻り値

間隔 [sec]を返す

引数

なし

備考

コンストラクタで指定された値と同一です。

マイコンボードごとの実装は各ページを参照してください。

STM32

Arduino