Everything

13.4.2 セマフォ情報

セマフォ情報では,
といった項目を個々のセマフォに対して定義します。
なお,セマフォ情報として定義可能な数は,0~127個に限られます。
以下に,セマフォ情報の記述形式を示します。
 
 CRE_SEM ( semid, { sematr, isemcnt, maxsem } );

以下に,セマフォ情報で記述する項目について示します。
1 ) セマフォ名semid
セマフォの名前を指定します。
なお,semidとして指定可能な値は,“オブジェクト名”に限られます。
備考 CF78V4では,セマフォ名とIDの対応を以下に示した形式でシステム情報ヘッダ・ファイルに出力します。このため,処理プログラム内で該当システム情報ヘッダ・ファイルをインクルードすることにより,セマフォ名をIDの代わりに利用することが可能となります。
【 システム情報ヘッダ・ファイル(C言語用)への出力形式 】
 #define semid   ID
 
【 システム情報ヘッダ・ファイル(アセンブリ言語用)への出力形式 】
 semid   .EQU    ID
 
2 ) 属性(キューイング方式)sematr
セマフォの属性(キューイング方式)を指定します。
なお,sematrとして指定可能な値は,“TA_TFIFO”に限られます。
【 タスクのキューイング方式 】
TA_TFIFO: タスクからwai_sem,またはtwai_semを発行した際,資源を獲得することができなかった(空き資源が存在しなかった)場合には,該当タスクをセマフォの待ちキューに“資源の獲得要求順”でキューイング
3 ) 初期資源数isemcnt
セマフォの初期資源数を指定します。
なお,isemcntとして指定可能な値は,“0~127”に限られます。
4 ) システム予約領域maxsem
システム予約領域です。
なお,maxsemとして指定可能な値は,“127”に限られます。