RXduino  1.20a
RXduinoマニュアル 最終更新日 平成26年6月29日
型定義 | 関数
tkdn_timer.h

RXマイコンの内蔵タイマーを利用して、経過時間を計測したり、waitを行うためのライブラリ [詳細]

#include "tkdn_hal.h"

ソースコードを見る。

型定義

typedef void(* USER_TIMER_FUNC )(void)
 ユーザが登録するタイマ割り込み関数の型。ユーザの関数はvoid func()のように引数と戻り値ののない関数。
 

関数

void timer_init (void)
 タイマーを初期化する [詳細]
 
void timer_wait_ms (unsigned long ms)
 指定された時間、待つ [詳細]
 
void timer_wait_us (unsigned long us)
 指定された時間、待つ [詳細]
 
unsigned long timer_get_ms (void)
 システムが起動してからの経過時間をミリ秒単位で返す [詳細]
 
unsigned long timer_get_us (void)
 システムが起動してからの経過時間をマイクロ秒単位で返す [詳細]
 
unsigned long timer_regist_userfunc (USER_TIMER_FUNC func)
 タイマー割り込みで呼び出されるユーザ関数を登録する [詳細]
 

説明

RXマイコンの内蔵タイマーを利用して、経過時間を計測したり、waitを行うためのライブラリ

このライブラリはCMT0を使用する。

TODO:
CMTのカウントクロックは、 出力したい矩形波の周波数が50Hz、200Hz、800Hzで切り替わるので、 その近辺で音階の調整が連続的に行えるかどうかは検証しなければならない。

tkdn_timer.h で定義されています。

関数

void timer_init ( void  )

タイマーを初期化する

ユーザが登録するタイマ割り込み関数を解除し、経過時間が返す値を0にリセットする。

戻り値
なし
警告
この関数を使うと、 timer_get_ms() や、 millis() micros() に影響がある。
void timer_wait_ms ( unsigned long  ms)

指定された時間、待つ

引数
ms待ち時間。ミリ秒単位
戻り値
なし
void timer_wait_us ( unsigned long  us)

指定された時間、待つ

引数
us待ち時間。マイクロ秒単位
戻り値
なし
警告
この関数はマイクロ秒タイマが32bitの値をオーバーフローするであろう約1時間経過後にクラッシュする可能性がある。
unsigned long timer_get_ms ( void  )

システムが起動してからの経過時間をミリ秒単位で返す

戻り値
経過時間(マイクロ秒)
警告
返す値は、ミリ秒なので約49日でオーバーフローする
unsigned long timer_get_us ( void  )

システムが起動してからの経過時間をマイクロ秒単位で返す

戻り値
経過時間(マイクロ秒) 1マイクロ秒の精度がある
警告
返す値は、(経過時間(ミリ秒部分)*1000 + 経過時間(マイクロ秒部分))なので約1.2時間でオーバーフローする
unsigned long timer_regist_userfunc ( USER_TIMER_FUNC  func)

タイマー割り込みで呼び出されるユーザ関数を登録する

登録されたユーザ関数は1msごとに呼び出される

引数
func呼び出したいユーザ処理関数
戻り値
常に1を返す