デバイスレベルの従来のNI-488.2コールを使用したシリアルポーリング

NI-488.2

デバイスレベルの従来のNI-488.2コールを使用したシリアルポーリング

デバイスレベルの従来のNI-488.2コールのibrspを使って、シリアルポールを行うことができます。 ibrspは、単一のシリアルポールを行い、シリアルポール応答バイトをアプリケーションに返します。自動シリアルポーリングが有効にされると、アプリケーションはibwaitを使って、ステータス関数IbstaにRQSが設定されるまでプログラムの実行を一時停止することができます。その後、プログラムはibrspをコールしてシリアルポール応答バイトを取得できます。

次の例では、自動シリアルポーリングが有効になっているときに、一般的なSRQサービス状態でibwaitibrspのコールを使う方法を示します。

char GetSerialPollResponse ( int DeviceHandle )
{
   char SerialPollResponse = 0;
   ibwait ( DeviceHandle, TIMO | RQS );
if ( Ibsta() & RQS )  {
      printf ( "デバイスがSRQをアサートしました。\n" );
      /* シリアルポール応答を回収するためにibrspを使用する。 */
      ibrsp ( DeviceHandle, &SerialPollResponse );
   }
   return SerialPollResponse;
}

関連項目:

AllSpoll

自動シリアルポーリングの概要

FindRQS

IBRSP

IBRSV

シリアルポーリングの概要

複数デバイスNI-488.2コールを使用したシリアルポーリング

デバイスからのサービス要求