データの受信

"受信完了"フラグがFALSEのとき、外部機器からデータを受信することができます。(「受信完了」フラグは、「RUNモード」に切り替えた後、データが送信された場合、ClearReceiveBufferを実行した場合、FALSEになります。)データは、CPUまたはMCUの受信バッファで自動的に受信されます。CPUの場合、受信バッファはシステムレジスタで定義されている必要があります。受信の終了を確認したら、CPUの指定された対象領域にデータをコピーできます。

指定した時間内に追加の受信バイトがなかった場合、または命令ClearReceiveBufferを実行した場合、出力IsDoneTRUEになります。次のデータの受信が禁止されます。F159_MTRNまたはClearReceiveBufferによって"IsDone"フラグがFALSEになります。

外部機器からのデータ受信の手順:

  1. 通信パラメータと受信バッファを設定する

    必要な設定: 通信モード(プログラム制御による汎用通信)、ボーレート通信フォーマット受信バッファ(CPUのみ)

  2. データを受信する。

    データは、受信バッファに自動的に受信されます。
  3. 受信の終端を確認する。

    以下の方法の1つを使用

    方法

    コメント

    IsReceptionDone

    "受信完了"フラグの値を返します。終端コードを受信した場合にTRUEになります。

    IsReceptionDoneByTimeOut

    終端コードが想定されていない場合のバイナリデータなど、タイムアウトによって受信の終了を確認するために使用されます。

    注記

    MCU:受信タイムアウトは、通信ポートのシステムレジスタに設定する必要があります。

    sys_bIsComPort1ReceptionDone

    sys_bIsComPort2ReceptionDone

    sys_bIsToolPortReceptionDone

    (CPUのみ)

    これらのシステム変数は、終端コードが受信されるとTRUEになります。

    MCUユニットX0およびX2の入力(X)フラグ(MCUのみ)

    これらのフラグを使用すると、MCUで受信の完了を確認することができます。

    受信バッファの直接確認

  4. 受信バッファのデータを処理する。

    以下の命令の1つを使用

    命令語

    コメント

    ReceiveData

    CPUまたはMCUが受信したデータを指定した変数に自動的にコピーします。

    ReceiveCharacters

    CPUまたはMCUが受信した文字を文字列変数に自動的に転送します。

    F10_BKMV

    受信バッファから指定エリアにデータを転送します。ReceiveDataまたはReceiveCharactersでは不要です。

    F161_MRCV

    MCUが受信したデータをCPUの受信バッファにコピーします。ReceiveDataまたはReceiveCharactersでは不要

  5. 次のデータを受信するためのCPUまたはMCUの準備

    以下の命令の1つを使用

    命令語

    コメント

    ClearReceiveBuffer

    次のデータを送信すると、受信バッファは自動的にリセットされます。データを送信せずに受信バッファをリセットする場合は、これらの命令のいずれかを実行してください。

    SendData

関連トピック

最終修正日: 2022-04-21このページに関するフィードバックお問い合わせ窓口