2016-04-19 11 views
-2

シリアルポートに2つのデバイスが接続されていて、その2番目のデバイスがその2番目のデバイスとのユーザのやりとりに基づいていつでもデータを送信できるように、いくつかの提案が必要でした。デバイスの接続先のシリアルポートで監視を継続しますか?

2番目のデバイスから送信されるデータは、wifi device.So経由でルーティングされます。

いつでもデータを送信できる2台目のデバイスを監視しておきたいと思います。この2台のデバイスは1台のノートパソコンに接続されています。私はいつも がいつでもデータを送信できるこの2台目のデバイスを待ちます。ユーザーはこの2番目のデバイスと対話します。

どのような提案の人ですか??

+0

あなたは、 "2番目のデバイスは、デバイスとのユーザーのやり取りだけでデータを送信します。"そしてもう一度あなたは言った、 "2番目のデバイスはいつでもデータを送信することができます。 「この2番目のデバイスを常に聞きたい」と言ったらどういう意味ですか? デバイスはノートパソコンのCOMポートと通信しています。つまり、ポートに読み書きしています。 – Rudra

+0

@ルドラ:そうですね。ユーザーが2番目のデバイスといつでもやり取りできるのは、2番目のデバイスがユーザーのやりとりに基づいていつでもデータを送信できることです。 –

+0

デバイスを見守りたいですか?データを受信したり送信したりするときに通知する必要がありますか? – Rudra

答えて

2

ユーザーがあなたのプログラムとやりとりするたびに。デバイスからデータの送信が開始されます。 OUTバッファに送信または書き込まれるすべてのデータに対して、INバッファ上の応答があります。

コマンドを実行するたびに、またはOUTバッファに何かを書き込むか、データを送信するたびに、デバイスの応答を読み取るようにしてください。

デバイスから受信する可能性のある応答を書き留めます(データの送信が成功した場合、失敗したデータの送信時、データ受信時の例外)。

次に、次に受けたいものを受け取った基準や応答を決定します。すべての4つの条件を1つのif文に入れ、16の可能な組み合わせからOR、AND、NOT演算を使用します。

コードスニペットまたはデバイス名を使用して元の問題を投稿できる場合は、より良い応答を得ることができます。 (私はあなたが複数のメッセージを送信し、応答を受け取るためにGSMモデムで作業していると仮定しました)

+0

私は1つの解決策を考えている。私のコンピュータが起動します。私の2番目のデバイスがデータを受け取るときは、私はこのイベントを持っています:mySerialPort.DataReceived + =新しいSerialDataReceivedEventHandler(DataReceivedHandler);リファレンス:http://stackoverflow.com/questions/16215741/c-sharp-read- only-serial-port-when-data-comes –

関連する問題