AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
AG903_OSWprEnaInt 関数

割込みの許可

Syntax
C++
int32_t AG903_OSWprEnaInt(uint32_t intno);
引数 
説明 
uint32_t intno 
[in] 割込み番号 

割込みの許可結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
引数異常 

割込みの許可をします。 (uITRON4.0実装時、ena_intを使用します。) 

内部カウンタをデクリメントします。(カウンタは AG903_OSWprDisInt でインクリメントされます) デクリメント前またはデクリメント後のカウンタ値が0だった場合に ena_int をコールします。

1: int32_t AG903_OSWprEnaInt(uint32_t intno) 2: { 3: ER ercd; 4: int32_t retval = AG903_ENONE; 5: 6: if(AG903_OSW_IRQ_NUM_MAX <= intno) { 7: return -AG903_EINVAL; 8: } 9: 10: if(0 < OswIntDisableCnt[intno]) { 11: OswIntDisableCnt[intno]--; 12: } 13: if(0 >= OswIntDisableCnt[intno]) { 14: ercd = ena_int((INTNO)(AG903_OSW_IRQ_TOPID+intno)); 15: OSW_SetLastErcd(ercd); 16: retval = OSW_ChgErcd(ercd); 17: } 18: 19: return retval; 20: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.