シリアル通信のタイミングとりについて

MZ Platformとは 掲示板 MZプラットフォームユーザー会掲示板 シリアル通信のタイミングとりについて

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • 著者
    投稿
  • #6007
    820ys163
    一般参加者

    現在、シリアル通信コンポーネントを使い、機器が持っている情報を入手(受信)したいのですが
    、対象機器がコマンドを送信して情報を受信する仕様の機器となっていて、個別で、一つ一つコマンドを送信した場合には、正常に値を受信できることは確認できています。
    ただ今回は、3つの値を連続で受信できるようにしたいと思います。
    入手したい値が、3つ(電力・電流・電圧)あり、各値を受信する為に3つのコマンドを送信して入手できるようにしたいと考えています。

    流れは、
     1.電力入手用コマンドの送信
     2.電力の「値」を受信
     3.電流入手用コマンドの送信
     4.電流の「値」を受信
     5.電圧入手用コマンドの送信
     6.電圧の「値」を受信

    という流れです。
    現状は、以上の流れでMZPF側から処理を流した場合、受信データが帰ってくる前に
    次のコマンドが送信される為、正常に値入手ができない状況と思います。
    できれば、値が受信されたことを確認して次のコマンドは送信できるようにタイミングを調整できる流れを作りたいと思います。
    アドバイスを宜しくお願いします。

    添付ファイル:
    #6014
    MZPlatformユーザー会
    サイト管理者

    コマンドの送信後、データを受信したらシリアル通信コンポーネントからデータ生成イベントが発生します。そこでの処理を工夫すると、次のコマンドを送信することが可能と思います。例えば文字列格納変数でどのコマンドを送信しているときかで処理を分岐して、1つ目なら2つ目のコマンド送信、2つ目なら3つ目、3つ目なら何もしないなどが考えられます。やり方はいろいろあると思いますので、まずはご自身でお考えいただけますでしょうか。

    #6017
    820ys163
    一般参加者

    アドバイスありがとうございます。
    双方型のシリアル通信の処理は、今回始めてになりますが、アドバイスいただいた内容で処理を作ってみます。
    ありがとうございます。

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • このトピックに返信するには、ログインしてください。