English
PROGRAMMER'S GUIDE割込み管理ライブラリ
戻る|   ■
割込み管理ライブラリ/2.リファレンス

2.3 関数一覧


機能
関数名
番号
割り込みレジスタアクセス管理
割り込みマスクレジスタ取得
INT_GetMsk
1
割り込みマスクレジスタ設定
INT_SetMsk
2
割り込みマスクレジスタ変更
INT_ChgMsk
3
割り込みステータスレジスタ取得
INT_GetStat
4
割り込みステータスレジスタリセット
INT_ResStat
5
A-Bus割り込みアックノリッジ設定
INT_SetAck
6
A-Bus割り込みアックノリッジ取得
INT_GetAck
7
割り込み処理ルーチンの登録、参照
割り込み関数登録
INT_SetFunc
8
SCU関数登録
INT_SetScuFunc
9
割り込み関数アドレス取得
INT_GetFunc
10
SCU関数アドレス取得
INT_GetScuFunc
11


2.4 関数仕様


[割り込みレジスタアクセス管理]




Title

関数仕様

Function

割り込みマスクレジスタ取得

Function name

INT_GetMsk

No

1

 書 式
Uint32 INT_GetMsk(void)
 入 力
なし
 出 力
なし
 関数値
割り込みマスクビット値
(0:マスクしない、1:マスクする)
 機 能
マスク保存用メモリを割り込みマスクビット値へ取得します。




Title

関数仕様

Function

割り込みマスクレジスタ設定

Function name

INT_SetMsk

No

2

 書 式
void INT_SetMsk(Uint32 msk_bit)
 入 力
msk_bit:割り込みマスクビット値
(0:マスクしない、1:マスクする)
 出 力
なし
 関数値
なし
 機 能
割り込みマスクビット値を割り込みマスクレジスタ、マスク保存用メモリへ設定します。




Title

関数仕様

Function

割り込みマスクレジスタ変更

Function name

INT_ChgMsk

No

3

 書 式
void INT_ChgMsk(Uint32 ena_msk_bit, Uint32 dis_msk_bit)
 入 力
ena_msk_bit
:割り込みマスクビット値(イネーブル)
dis_msk_bit
:割り込みマスクビット値(ディセーブル)
 出 力
なし
 関数値
なし
 機 能
指定されたビットのみの割り込みマスクレジスタ、マスク保存用メモリを変更します。指定されないビットは値を保持します。
割り込みマスクビット値 (イネーブル)の1のビットをマスクしないように設定し、割り込みマスクビット値(ディセーブル)の1のビットををマスクするように設定します。どちらも指定されなかったビットは値を保持します。
この処理中には割り込みを一時禁止しています。また、割り込みマスクビット値(イネーブル)の1のビットに対応する割り込みステータスレジスタをリセットします。A-Bus割り込みマスクをイネーブルにした場合は、割り込みアクノリッジレジスタを有効にします。
 備 考
どの割り込みマスクビットの指定もしない場合は、INT_MSK_NULLを指定してください。



Title

関数仕様

Function

割り込みステータスレジスタ取得

Function name

INT_GetStat

No

4

 書 式
Uint32 INT_GetStat(void)
 入 力
なし
 出 力
なし
 関数値
割り込みステータスレジスタ値
(0:割り込み未発生、1:割り込み発生)
 機 能
割り込みステータスレジスタを取得します。




Title

関数仕様

Function

割り込みステータスレジスタリセット

Function name

INT_ResStat

No

5

 書 式
void INT_ResStat(Uint32 status_bit)
 入 力
status_bit:割り込みステータスビット値
(0:リセットする、1:値を保持する)
 出 力
なし
 関数値
なし
 機 能
割り込みステータスビット値の0のビットをリセットします。



Title

関数仕様

Function

A-Bus割り込みアックノリッジ設定

Function name

INT_SetAck

No

6

 書 式
void INT_SetAck(Uint32 ack)
 入 力
ack:アックノリッジ値

定数名
説 明
INT_ACK_ENA
有効にする
INT_ACK_DIS
今の状態を保持する
 出 力
なし
 関数値
なし
 機 能
指定されたアックノリッジ値をA-Bus割り込みアックノリッジレジスタに設定します。



Title

関数仕様

Function

A-Bus割り込みアックノリッジ取得

Function name

INT_GetAck

No

7

 書 式
Uint32 INT_GetAck(void)
 入 力
なし
 出 力
なし
 関数値
アックノリッジ値

定数名
説 明
INT_ACK_ENA
有効になっている
INT_ACK_DIS
無効になっている
 機 能
A-Bus割り込みアックノリッジレジスタのアックノリッジ値を取得します。

[割り込み処理ルーチンの登録、参照]




Title

関数仕様

Function

割り込み関数登録

Function name

INT_SetFunc

No

8

 書 式
void INT_SetFunc(Uint32 num, void* hdr)
 入 力
num  
:ベクタ番号
hdr  
:割り込み関数アドレス
 出 力
なし
 関数値
なし
 機 能
ベクタ番号の示す割り込みベクタへ割り込み関数アドレスを登録します。
登録した割り込み関数は割り込み発生時に実行されます。割り込み関数アドレスがNULLの場合は、ベクタ番号の内容によって割り込みベクタに登録する関数は、以下のようになります。
 備 考
指定できる割り込み関数は、レジスタ保存、復帰、RTE命令で終わる関数です(C言語では#pragma interrupt宣言を使用している関数が指定できます)。
本関数は、マスタ、スレーブSH2とも使用可能です。登録したいCPUでこの関数を実行してください。



Title

関数仕様

Function

SCU関数登録

Function name

INT_SetScuFunc

No

9

 書 式
void INT_SetScuFunc(Uint32 num, viod* hdr)
 入 力
num  
:ベクタ番号(SCUベクタ番号のみ指定可能)
hdr  
:SCU関数アドレス
 出 力
なし
 関数値
なし
 機 能
指定されたベクタ番号のSCU割り込み関数へSCU関数アドレスを登録します。登録したSCU関数はSCU割り込み発生時に実行されます。
指定された割り込みルーチンアドレスがNULLの場合は、SCUダミー関数を登録します。SCUダミー関数はリターン処理のみ行う関数です。
 備 考
本関数は、マスタSH2のみ使用可能です。マスタSH2でこの関数を実行してください。
INT_SetFuncで割り込み関数を登録した場合、そのベクタのSCU割り込みルーチンは無効となり、登録関数は呼び出されません。



Title

関数仕様

Function

割り込み関数アドレス取得

Function name

INT_GetFunc

No

10

 書 式
void* INT_GetFunc(Uint32 num)
 入 力
num:ベクタ番号
 出 力
なし
 関数値
割り込み関数アドレス
 機 能
指定されたベクタ番号に登録してある割り込み関数アドレスを取得します。
 備 考
本関数は、マスタ、スレーブSH2とも使用可能です。取得したいCPUでこの関数を実行してください。




Title

関数仕様

Function

SCU関数アドレス取得

Function name

INT_GetScuFunc

No

11

 書 式
void* INT_GetScuFunc(Uint32 num)
 入 力
num:ベクタ番号
(SCUベクタ番号のみ指定可能)
 出 力
なし
 関数値
SCU関数アドレス
 機 能
指定されたベクタ番号のSCU割り込み関数に登録してあるSCU関数アドレスを取得します。
 備 考
本関数は、マスタSH2のみ使用可能です。マスタSH2でこの関数を実行してください。

戻る|   ■
PROGRAMMER'S GUIDE割込み管理ライブラリ
Copyright SEGA ENTERPRISES, LTD., 1997