RcvRespMsg
目的
トーカとしてアドレス指定されているデバイスからデータバイトを読み取ります。
形式
C
void RcvRespMsg (int boardID, void *buffer, size_t count, int termination)
Visual Basic
CALL RcvRespMsg (boardID%, buffer$, termination%)
対話式制御(使用に関する注意)
RcvRespMsg count termination
入力
boardID | インタフェース番号 |
count | 読み取るバイト数 |
termination | データ終了モードの説明(STOPendまたは8ビットのEOS文字) |
出力
buffer | 受信したデータバイトの格納先 |
説明
RcvRespMsgは、最大countバイトをGPIBから読み取り、それらのバイトをbufferに格納します。countバイトに到達するまで、あるいは終了条件が検出されるまで、データバイトを読み取ります。終了条件がSTOPendの場合、EOIラインがアサートされた状態でバイトを受信した時点で読み取りを終了します。それ以外の場合は、8ビットのEOS文字を検出した時点で読み取りを終了します。転送された実際のバイト数はIbcntグローバル関数に返されます。
RcvRespMsgは、インタフェースがすでにリスンアクティブ状態で、デバイスがすでにトーカとしてアドレス指定されているものと仮定します(ReceiveSetupまたはReceiveを参照)。
発生する可能性のあるエラー
EABO | すべてのバイトを受信する前にI/Oのタイムアウト時間が経過しました。 |
EADR | インタフェースがリスンアクティブ状態でありません。 ReceiveSetupを使ってGPIBを正しくアドレス指定してください。 |
EARG | terminationパラメータが無効です。STOPendまたは8ビットのEOS文字でなければなりません。 |
EDVR | NI-488.2ドライバの構成またはインストールが正しくありません。 |
EHDL | boardIDは範囲外です。 |
ELCK | 他の処理によりロックされているため、要求された動作が行われませんでした。 |
ENEB | インタフェースが取り付けられていないか、正しく構成されていません。 |
EOIP | 非同期I/Oの処理中です。 |