Everything

set_flg

iset_flg

概要
ビット・パターンのセット
C言語形式
 ER      set_flg ( ID flgid, FLGPTN setptn );
 
 ER      iset_flg ( ID flgid, FLGPTN setptn );
 
アセンブリ言語形式
 MOVW    BC, #setptn
 MOV     A,  #flgid
 CALL    !!_set_flg
 
 MOVW    BC, #setptn
 MOV     A,  #flgid
 CALL    !!_iset_flg
 
パラメータ
I/O
パラメータ
説明
I
 ID      flgid;
イベントフラグのID
I
 FLGPTN  setptn;
セットするビット・パターン(16ビット幅)
 
機能
flgidで指定されたイベントフラグのビット・パターンとsetptnで指定されたビット・パターンの論理和ORを対象イベントフラグのビット・パターンとして設定します。
ただし,本サービス・コールを発行した際,対象イベントフラグの待ちキューにキューイングされているタスクの要求条件を満足した場合には,ビット・パターンの設定処理とともに,該当タスクを待ちキューから外します。
これにより,該当タスクは,WAITING状態(イベントフラグ待ち状態)からREADY状態へ,またはWAITING-SUSPENDED状態からSUSPENDED状態へと遷移します。
備考1 本サービス・コールを発行した際,待ちキューのタスクがREADY状態へと遷移する場合は,該当タスクの優先度に対応したレディ・キューの最後尾にキューイングし直す処理もあわせて実行されます。
備考2 本サービス・コールを発行した際,対象イベントフラグに設定されているビット・パターンがB'1100,setptnで指定されたビット・パターンがB'1010であった場合には,対象イベントフラグのビット・パターンはB'1110となります。
戻り値
マクロ
数値
意味
E_OK
0
正常終了