OS_EnableInterrupts

構文

#include <nitro/os.h>

OSIntrMode OS_EnableInterrupts( void );

引数

なし。

返り値

この関数を呼ぶ前の状態を表す値を返します。

返り値の型は OSIntrMode ( u32 の typedef ) ですが、返り得る値は以下の OSIntrMode_Irq 列挙型 の値のどちらかです。

以前の状態
OS_INTRMODE_IRQ_DISABLE IRQディセーブル(禁止)
OS_INTRMODE_IRQ_ENABLE IRQイネーブル(許可)

説明

IRQ 割り込みを許可します。

ここで許可するのは、すべての割り込みのマスターイネーブルです。IRQ割り込み要因のイネーブルを個別にセットしていても、この関数でIRQ が許可になっていないと割り込みは発生しません。

返り値は、この関数を呼ぶ以前の状態を表す値です。

内部動作

CPSRレジスタ(current program status register)の IRQ割り込みの制御ビットをリセット(リセットがイネーブル)にしています。

参照

OS_DisableInterrupts, OS_RestoreInterrupts

履歴

2005/03/08 用語統一 [割込み] → [割り込み]
2004/03/04 FIQ は処理に含めないようにした
2004/01/14 FIQ も処理に含めるようにした
2003/12/01 初版