Shinobiライブラリ - タイマー関数

syTmrGenSetInt

汎用タイマーの割り込みの許可

書式

void syTmrGenSetInt( *func, *param ) 
void *func 
void *param 

引数

*func   カウンタ値が0になったときに呼ばれる関数
*param   関数に渡す引数のポインタ

戻り値

なし

解説

汎用タイマーは減算型のタイマーとなっており、 タイマーカウンタ値が0になると割り込み(タイマー割り込み)が発生する仕組みになっています。

このタイマー割り込み発生時にコールバックする関数をこの関数にて登録します。

いったん登録した関数が呼ばれると関数登録は無効になりますので、 連続してタイマー割り込み呼び出しを行いたい場合には、 その都度この関数で登録を行う必要があります。

引数に NULLを指定した場合、カウンタ値が0になるまで待ってこの関数をぬけます。


用例

/* コールバック関数の例 */
void IntFunc(void* param)
{
	/* 引数を保存 */
	IntCount = param;

	/* 割り込み発生を継続する */
	syTmrGenSetInt(IntFunc, param+1);

	/* カウンタに初期値を設定*/
	syTmrGenSetCount(0-10000);

	/* タイマーを再稼動する */
	syTmrGenStart();
}

備考

割り込み発生時のコールバック関数が既に登録されているときにこの関数をコールした場合は、 後から登録された関数のみが有効となります。 タイマー停止状態で、callbackにNULLを指定してコールされた場合、この関数内でタイマーを稼動させてください。

syTmrGenSetInt
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999