From 01:00 AM CDT Saturday, June 10 - 04:00 AM CDT Saturday, June 10, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



VISA読み取り関数を実行する際にエラー -1073807253が発生する



使用ソフトウェア:
使用ソフトウェア・バージョン: N/A
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A

問題:
シリアル通信で他社製デバイスから160ミリ秒ごとに80個の文字列を発生させて、VISA読み取り関数を使用して読み取っています。デバイスは、プログラムの実行状態に関係なくデータを出力し続けています。しかし、読み取りをおこなうとフレーミングエラー -1073807253が発生します。どうしてエラーが発生するのですか?


解決策:
このエラーは、フレーミングエラーです。シリアルデータは、一度に1バイトずつ転送されます。各バイトは、スタートビット、データビット、およびストップビットという特有の形式があります。フレーミングエラーは、1バイトのデータを受信した際にそれが形式通りではない場合に発生します。この種類のエラーが発生する要因は、いくつかあります。
  • 出力されたデータの1文字目を受信した際に、まだポートがデータ読み取りの準備が完了していない可能性があります。VISAシリアルポート構成の後に遅延時間(約10~100ミリ秒) を加えることで、構成するための十分な時間をシリアルポートに与えることが可能です。それから、「VISA Flush I/Oバッファ排出」VIを使用することで、バッファ内にある不完全なデータをクリアすることができます。その後到着するデータは、正常な値として受信されます。下図は、上記をおこなった作成例です。

     


  • シリアルポートおよびデバイスが、異なる設定で構成されている可能性があります。この問題を解決するには、Measurement & Automation Explorer(MAX)を開きデバイスとインタフェースの下にあるシリアルポートを選択します。設定タブにあるVISAリソース名、ボーレート、データビット、パリティ、およびストップビットの設定がすべて一致しているかどうかを確認します。MAX内、もしくは上記の例に示す関数でこれらの設定をプログラム的に変更することができます。

  • ケーブルが破損、もしくは接続不良の可能性があります。ケーブルに問題なく、コネクタが正しく接続されていることを確認します。

  • シリアルケーブル自体が不良の可能性があります。別のシリアルケーブルをお試しください。

  • シリアルライン上にあるノイズ源が影響している可能性があります。電源ケーブル、モニター、もしくはノイズ源となる場所からシリアルケーブルを移動してください。

  • ドライバソフトウェアが正しくインストールされていない可能性があります。LabVIEW、NI Serial、およびNI VISAがコンピュータに正しくインストールされていることを確認します。エラーが発生し続ける場合は、これらを修復する必要があります。


関連リンク:
技術サポートデータベース 0Q0H595Q: VISA関数を使ってパラレルポートを制御できますか
技術サポートデータベース 18QGBH0O: LabVIEW でパラレルポートの制御をビットごとに行う
技術サポートデータベース 3B8H2CL6: How Can I Verify That My Parallel Port is Working?

添付:





報告日時: 01/27/2005
最終更新日: 01/08/2016
ドキュメントID: 3HQH5B40