1

シリアルCOMポートを介してWindowsPCにデータを送信する単純なデバイスを作成しています。

ソフトウェアがデバイスを認識するまで、使用可能なCOMポートをスキャンできるようにしたいと思います。問題は、PCが自分以外のデバイスでハンドシェイクを開始しようとすると、コマンドを解釈する可能性があることです[もちろん間違っています]。

私が見る唯一の解決策は、デバイスが定期的にある種の識別子を、おそらく1秒間に5回程度ブロードキャストすることです。したがって、アプリケーションは、COMポートに接続されている別のデバイスを破損するリスクを冒さずに、その識別子をリッスンするだけで済みます。アプリケーションがロードされると、デバイスが認識されるまで、使用可能な各COMポートでリッスンします。これは合理的に聞こえますか?

ありがとう

4

1 に答える 1

1

IMOは、ハンドシェイクを開始する方向に関係なく、問題は同じです。デバイスからハンドシェイクを送信し、PC上の別のアプリケーションが対応するシリアルポートをリッスンしている場合、送信しているデータを誤って解釈するリスクもあります。

したがって、両側のソフトウェアは、外部から受信する一貫性のないデータから保護する必要があります。

于 2011-07-01T12:39:17.787 に答える