c#串口多次请求和响应

c# serial port multiple requests and responses

抱歉,如果这个问题看起来很尴尬。

我正在用 C# 开发 GUI(win 窗体)。 GUI 的目的是将数据包发送到控制器并取回数据。这些事件由按钮执行。

发送单个请求并接收回数据没问题。但是我有多个文本框可以将数据发送到控制器,每个文本框都意味着一个新数据包从 GUI 发送到控制器。

所以我的问题是如何实现一种确认,例如,如果我向控制器发送一个请求并等待其响应 10 毫秒,如果我从控制器收到响应,则发送新数据包,否则就丢弃新数据包。

我有一个事件可以从端口接收数据并在解码后将其显示在文本框中,但对于响应,我将有一个富文本框终端。

谢谢

我的回答是基于我从你的问题中得到的答案

如果您想在您的 GUI 端执行此序列化,您可以锁定您的 GUI 实例。

等待 10 毫秒,你的请求应该是异步请求,因为同步请求会在这里添加它自己的处理时间。 会是这样的

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