データ転送を終了する

NI-488.2

データ転送を終了する

GPIBのデータ転送は、転送の最後のバイトでGPIB EOIラインがアサートされたとき、またはあらかじめ構成されたEOS(文字列の終わり)文字が送信された場合に終了されます。デフォルトで、EOIは書き込みの最後のバイトでアサートされ、EOSモードは無効になっています。

ibconfig関数(オプションIbcEOT)を使って、EOT(転送の終わり)モードの設定と解除を切り替えることができます。EOTモードを有効にすると、書き込みの最終バイトがGPIBに送信されたときにGPIB EOIラインがアサートされます。EOTモードを無効にすると、書き込みの最終バイトでEOIラインはアサートされません。

ibconfig関数(オプションIbcEOS)を使って、EOSモードの有効と無効の切り替えと構成を行うことができます。EOSモードの構成には次の情報が含まれます。

  • 7ビットまたは8ビットのEOSバイト
  • EOS比較方法―EOSバイトの有効ビットが7ビットまたは8ビットであるかを示します。7ビットのEOSバイトでは、8番目のビットは無視されます。
  • EOS書き込み方法―これを有効にすると、GPIBにEOSバイトが書き込まれるとGPIB EOIラインが自動的にアサートされます。ibwrtコールに渡されたバッファにEOSバイトが5つ含まれている場合は、5つのEOSバイトがそれぞれGPIBに書き込まれる毎にEOIラインがアサートされます。ibwrtバッファにEOSバイトが1回も含まれない場合は、EOIラインはアサートされません(ただし、EOTモードがONの場合は、書き込みの最後のバイトでEOIラインがアサートされます)。
  • EOS読み取り方法―これを有効にすると、GPIBでEOSバイトが検出されたり、GPIB EOIラインがアサートされたり、または指定したカウントに達した場合に、ibrdibrdaibrdfコールは終了されます。EOS読み取り方法を無効にすると、ibrdibrdaibrdfコールは、GPIB EOIラインがアサートされるか指定されたカウントに達した場合にだけ終了されます。

ibconfig関数を使って、EOSバイトが読み取られたときにGPIB EOIラインがアサートされているかを示すようにソフトウェアを構成することができます。IbcEndBitIsNormalオプションを使うと、GPIB EOIラインがアサートされたときにのみIbstaのENDビットがレポートされるようにソフトウェアを構成できます。デフォルトでは、EOSバイトが読み取られたか、読み取り中にEOIラインがアサートされたときにIbstaでENDビットがレポートされます。