掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
シリアル通信で区切り子を待つには? (ID:40081)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
DELPHI初心者です。 DELPHI7でシリアル通信をしています。MSCommを利用しています。 基本的に送受信は行なわれている様です。 垂れ流し状態で、MSCommの受信イベントに任せる状態で全て返信を受信できています。 ここで、コマンドを送るたびにタイムアウトまで区切り子までの受信を待つ様にしたいのですが、タイムアウトまでWhileループで回すとMSCommイベントが発生していない様なのですが、その様な仕様なのでしょうか? 垂れ流しと区切り子まで待つ場合と、通信設定は変えていません。 InputLen := 1; InBufferCount := 0; RThreshold := 1; です。 リングバッファを生成して、MSCommの受信イベント内でリングバッファへ書き込んでいます。垂れ流しの場合は、リングバッファーへ文字列が代入され、カウンターもカウントアップされます。 このカウンター値をMSComm受信イベント内でStatusBarに表示しているのですが、Whileループだと、これがカウントアップしません。 MSComm受信イベントが発生していないと解釈せざるを得ません。 使い方が間違っている様なきがしています。 ご教授願えないでしょうか?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.