SVC_Sleep

構文

#include <nitro/os/common/systemCall.h>
void SVC_Sleep( void ); 

引数

なし。

返り値

なし。

説明

注: これはARM7のみに存在する関数です。
原発振を停止します。

RTC/キー/カード/カートリッジ/本体オープンのいずれかの割り込みが許可(IE にセット)されている場合、該当する割り込み要求(の発生によって復帰します。

原発振が停止していますので復帰直後はIFフラグはセットされませんが、CPU再起動時まで端子へ割り込み要求信号が入ったままになっている場合にはその時点でIFフラグがセットされます。

あらかじめ両プロセッサともに POWCNT レジスタを 0 クリアして全部ロックを停止させ、サウンドアンプや無線モジュールも停止、ARM9 をホールト状態にしてから呼び出してください。

POWCNT レジスタの LCD イネーブルフラグは、この関数を呼び出す 100ms 以上前に 0 へ落としてください。守られていない場合は本体がシャットダウンしてしまう可能性があります。

参照

SVC_Halt

履歴

2005/03/08 用語統一 [割込み] → [割り込み]
2004/07/22 初版