17.5.10 割り込みハンドラ情報

割り込みハンドラ情報では,

1 ) 例外コードinhno

2 ) 属性(記述言語)inhatr

3 ) 起動アドレスinthdr

といった項目を個々の割り込みハンドラに対して定義します。

なお,割り込みハンドラ情報として定義可能な数は,1つの例外コードに対して1個に限られます。

以下に,割り込みハンドラ情報の記述形式を示します。

 
 DEF_INH ( inhno, { inhatr, inthdr } );


以下に,割り込みハンドラ情報で記述する項目について示します。

1 ) 例外コードinhno

割り込みハンドラを登録するEIレベル・マスカブル割り込みに対応した例外コードを指定します。
なお,inhnoとして指定可能な値は,デバイス・ファイルで規定されている割り込み要因名,または0x1000〜基本情報で指定した最大例外コードに限られます。


備考 inhnoに“割り込み要因名”を指定した場合,CF850V4の起動オプションとして-cpu△nameの指定が必須となります。

2 ) 属性(記述言語)inhatr

割り込みハンドラの属性(記述言語)を指定します。
なお,inhatrとして指定可能な値は“TA_HLNG,TA_ASMのいずれか”に限られます。


TA_HLNG: C言語

TA_ASM: アセンブリ言語

3 ) 起動アドレスinthdr

割り込みハンドラの起動アドレスを指定します。
なお,inthdrとして指定可能な値は“0x0〜0xfffffffeの2バイト境界値,またはシンボル名”に限られます。


備考 割り込みハンドラを以下のように記述した場合,inthdrに指定するシンボル名はfunc_intになります。

 #include        <kernel.h>
 #include        <kernel_id.h>
 
 void
 func_int ( void )
 {
         ............
         ............
 
         return;
 }