0
user (pouzivatel)
とint(stav odberu)
のようなデータをシリアルポートでリンクモデム経由でロードしてローカルデータベースに格納する必要があります。データをロードし、シリアルポート経由でデータを送信する方法はわかっていますが、イメージ上の構造内でデータを生成する必要があります。 C#自分のプロトコルを使用している2台のPC間でシリアルポート経由でデータを送信
SOH+adresa objektu
(SOH +アドレスに関するいくつかの文字列)を待つか、今はわかりません。確認(ACK)に関するデータを送信し、新しいデータが来るのを待ちます。
待機シーケンスが私の最大の問題です。データの受信を停止して待機するにはどうすればよいですか。
さて、ブロッキング読み取り呼び出しを行うか、データrxのイベントを発生させるラッパーコンポーネントを使用してください。既定では、C#Toolboxにはシリアルコンポーネントがあります。それは確かに 'DataReceived'イベントを持っていて、おそらくスレッドで呼び出すことができるメソッドをブロックしています。 –
または、単にDataReceivedイベントを待って使用しないでください。 –
C#には私が使用するシリアルコンポーネントがあります。私はポート上でデータを読み込み、テキストボックスに表示することは簡単ですが、上記の画像をどのようにプログラムするのか分かりません。私はデータ受信ハンドラを使用します プライベート静的void DataReceivedHandler( オブジェクト送信者、 SerialDataReceivedEventArgs e) { SerialPort sp =(SerialPort)送信者; 文字列indata = sp.ReadExisting(); Console.WriteLine( "Data Received:"); Console.Write(indata); } – MichalCh