IBRDF

NI-488.2

IBRDF

ボードレベル/デバイスレベル


目的

デバイスからファイルにデータを読み取ります。

形式

C

unsigned long ibrdf (int ud, const char *flname)

Visual Basic

CALL ibrdf (ud%, flname$)

または

status% = ilrdf (ud%, flname$)

対話式制御(使用に関する注意)

ibrdf flname

入力

ud ボードまたはデバイスデスクリプタ
flname データを読み取り先のファイル名

出力

関数からの戻り値 Ibstaの値

説明

デバイスレベル

udがデバイスデスクリプタの場合、ibrdfはGPIBをアドレス指定し、GPIBデバイスからデータを読み取り、flnameによって指定されたファイルにそのデータを配置します。ENDを受信すると操作は正常終了します。タイムアウト時間内に転送が完了できないと、処理はエラーで終了します。転送された実際のバイト数はIbcntグローバル関数に返されます。

ボードレベル

udがボードデスクリプタの場合、ibrdfはGPIBデバイスからデータを読み取り、flnameよって指定されたファイルにそのデータを配置します。ボードレベルのibrdfは、GPIBがすでに正しくアドレス指定されているものと仮定します。ENDを受信すると操作は正常終了します。転送をタイムアウト時間内に完了できなかったり、あるいはボードがCICでない場合にCICがGPIB上でDCL(Device Clear: デバイスクリア)を送信すると、操作はエラーで終了します。転送された実際のバイト数はIbcntグローバル関数に返されます。

発生する可能性のあるエラー

EABO タイムアウト時間内にENDを受信しなかったか、あるいはudがボードデスクリプタで、読み取り処理を開始後にDCL(Device Clear: デバイスクリア)を受信しました。
EADR ボードレベル: GPIBが正しくアドレス指定されませんでした。ibcmdを使ってGPIBをアドレス指定してください。
デバイスレベル: デバイスのGPIBアドレスとアクセスボードのGPIBアドレス間に競合が存在します。代わりにibconfigIbcPADIbcSAD)を使用してください。
EARG flnameが無効です。
EBUS デバイスレベル: デバイスがGPIBに接続されていません。
ECIC デバイスレベル: アクセスボードがCICでありません。デバイスレベルのコールとバスの管理を参照してください。
EDVR NI-488.2ドライバの構成またはインストールが正しくありません。
EFSO ibrdfflnameにアクセスできませんでした。
EHDL udが無効または範囲外です。
ELCK 他の処理によりロックされているため、要求された動作が行われませんでした。
ENEB インタフェースが取り付けられていないか、正しく構成されていません。
EOIP 非同期I/Oの処理中です。