追加情報
LabVIEWにあるシリアル通信のサンプルプログラム(NIサンプルファインダ>>ハードウェア入力と出力>>シリアル>>簡易シリアル)を確認すると、
VISAシリアルシリアル構成VIから始まることが分かります。これにより、終端文字(デフォルトは16進数0A( "改行"))とタイムアウト(デフォルトは10秒)の両方が設定されます。
シリアルデータと設定した終端文字と一致するバイトを読み取っている場合、VISA読み取りVIはこれが要求されたデータの最後であると想定し、読み取り操作を停止します。これは、条件1が満たされず、VIがポートからすべてのバイトを読み取っていなくても、上記の第2の条件が満たされているために発生します。
デフォルトの終端文字を使用すると、通常のテキスト通信では問題は発生しません。ただし、バイナリデータには0x0Aバイトに特別な意味が割り当てられていません。上記の例では、最初の読み取り操作が63バイト後に停止し、ソフトウェアバッファ内の残りの37バイトが読み取られるのを待つ理由があります。シリアル経由でバイナリデータ転送を行っている場合は、ほとんどの場合、VISAシリアルシリアル構成VIで終端文字を無効にします。