IBFIND
ボードレベル/デバイスレベル
目的
ボードまたはユーザが構成したデバイスのデスクリプタを開いて初期化します
形式
C
int ibfind (const char *udname)
|
Visual Basic
CALL ibfind (udname$, ud%)
|
または
入力
udname
|
ユーザが構成したデバイスまたはボード名 |
出力
関数からの戻り値 |
ボードまたはデバイスデスクリプタ、あるいは-1 |
説明
ibfindを使って、ボードまたはユーザ構成デバイスのデスクリプタを取得します。 このボードまたはデバイスデスクリプタは、後続のNI-488.2コールで使用できます。
ibfindは、ibonl 1と同様に機能し、ボードまたはデバイスデスクリプタを初期化します。ibfindが返すユニットデスクリプタは、ibonl 0を使用してボードまたはデバイスをオフラインにするまで有効です。
ibfindが有効なデスクリプタを獲得できない場合は、-1が返されます。 また、IbstaにERRビットが設定され、IberrにEDVRが設定されます。
|
メモ ユニットデスクリプタは各プロセス毎に割り当てられるため、プロセス間でユニットデスクリプタを共有することはできません。あるプロセスから別のプロセスにユニットデスクリプタを渡すと、2番目のプロセスでそのデスクリプタを使用するすべてのNI-488.2コールからEDVRが返されます。 |
ibfindを使用したデバイスデスクリプタの取得は、既存のアプリケーションとの互換性を持たせる場合にのみ役立ちます。新規アプリケーションでは、ibfindの代わりにibdevを使用します。 ibdev はより柔軟性に富み、使いやすく、アプリケーションはデバイス名の使用を必要としなくなります。
発生する可能性のあるエラー
EBUS
|
デバイスレベル: デバイスがGPIBに接続されていません。 |
ECIC
|
デバイスレベル: アクセスボードがCICでありません。デバイスレベルのコールとバスの管理を参照してください。 |
EDVR
|
NI-488.2ドライバの構成またはインストールが正しくありません。 |
ELCK
|
インタフェースは、他の処理によりロックされています。 |
ENEB
|
インタフェースが取り付けられていないか、正しく構成されていません。 |