2016-05-16 13 views
1

Sorry, wenn diese Frage peinlich aussieht.C# serielle Schnittstelle mehrere Anfragen und Antworten

Ich entwickle eine GUI (Win Forms) in C#. Der Zweck der GUI besteht darin, Datenpakete an einen Controller zu senden und die Daten zurück zu bekommen. Diese Ereignisse werden über Schaltflächen ausgeführt.

Senden einzelner Anfrage und Empfangen von Daten ist in Ordnung. Aber ich habe mehrere Textfelder, um Daten an den Controller zu senden, und jedes Textfeld bedeutet ein neues Paket, das von der GUI zum Controller geht.

Also meine Frage ist, wie kann ich eine Art von Bestätigung implementieren zum Beispiel Wenn ich eine Anfrage an den Controller und warten auf seine Antwort für 10ms, wenn ich die Antwort von der Steuerung zurück, dann senden Sie das neue Paket ansonsten einfach verwerfen neues Paket.

Ich habe ein Ereignis, um die Daten von den Ports zu empfangen und in Textfeldern nach der Decodierung anzuzeigen, aber für die Antworten werde ich ein Rich-Text-Box-Terminal haben.

dank

Antwort

1

meine Antwort auf das, was ich aus Ihrer Frage bekam

Wenn Sie diese Serialisierung bei Ihrer GUI Seite ausführen möchten, kann u die Instanz Ihrer GUI sperren.

für wartende scharfe 10ms, sollte Ihre Anfrage asynchrones Anfrage sein, da Sync Request hier seine eigene Bearbeitungszeit hinzufügen wird. wird es so etwas sein

lock(curGUI) 
{ 
    MakeAsyncReq(Param reqParam); 
    Thread.Sleep(10); 
} 
+0

hallo Amit eigentlich habe ich die Antwort bekommen. Ich habe Flaggen dafür auch mit Ihrem Konzept hinzugefügt. Dank –

+0

ist es mein Problem – Amit

Verwandte Themen