IBLINES
ボードレベル
目的
GPIBの8本の制御ラインのステータスを返します。
形式
C
|
unsigned long iblines (int ud, short *clines)
|
Visual Basic
|
CALL iblines (ud%, clines%)
|
または
|
status% = illines (ud%, clines%)
|
入力
出力
|
clines
|
GPIB制御ラインの状態情報を返します |
| 関数からの戻り値 |
Ibstaの値
|
説明
iblinesは、GPIB制御ラインの状態をclinesに返します。clinesの下位バイト(ビット0から7)には、GPIBの各制御ラインのステータスを検知するGPIBインタフェースボードの機能を示すマスクが含まれます。上位バイト(ビット8〜15)には、GPIB制御ラインのステータス情報が設定されます。各バイトのパターンを次に示します。
| 7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| EOI |
ATN |
SRQ |
REN |
IFC |
NRFD |
NDAC |
DAV |
GPIB制御ラインがアサートされているかどうかを判断するには、まず下位バイトの該当ビットを調べ、ラインを監視できるかどうかを確認します。ラインが監視できる(該当ビット位置が1になっている)場合は、次に上位バイトの対応するビットを調べます。ビットが設定(1)されている場合、該当する制御ラインはアサートされています。このビットがクリア(0)であれば、制御ラインはアサートされていません。
サンプル
short lines;
iblines (ud, &lines);
if (lines & ValidREN) {
/*RENがアサートされているか確認する*/
if (lines & BusREN) {
printf ("RENはアサートされています");
}
}
|
発生する可能性のあるエラー
|
EDVR
|
NI-488.2ドライバの構成またはインストールが正しくありません。 |
|
EHDL
|
udが無効または範囲外です。 |
|
ELCK
|
他の処理によりロックされているため、要求された動作が行われませんでした。 |
|
ENEB
|
インタフェースが取り付けられていないか、正しく構成されていません。 |
|
EOIP
|
非同期I/Oの処理中です。 |