C# 串行端口或 USB HID 连接

本文关键字:HID 连接 USB 串行端口 | 更新日期: 2023-09-27 18:33:30

对于我的项目,我需要与赛普拉斯PSoC5进行通信。我可以使用串行连接或 USB HID 连接。

我创建了一个 C# 项目,用于向 PSoC5 发送和读取数据。现在,我正在使用串行端口的ReceiveData事件来获得新数据的通知。基本上,我的项目可以接收应该实时绘制的数据流,或者只是我想在 GUI 中更新的一些设置。

现在我面临的问题是 ReceivedData 事件经常触发(每 32 个字节),这在有数据流时当然不好。基本上,如果我获得绘图的数据,我每秒接收 24000 字节。我知道我可以调整 ReceivedBytesThreshold,但是这样我就不会得到低于阈值的数据事件。

谁能知道是否有办法解决这个问题?

将 PSoC5 用作 HID 设备会是一个优势吗?

C# 串行端口或 USB HID 连接

默认情况下,SerialPort.ReadBufferSize设置为 4096 字节。更多信息在这里。但是您可以轻松地更改它以适应必要的数据量。然后在DataReceived事件处理程序中执行以下操作

 static void Serial_DataReceived(object sender, SerialDataReceivedEventArgs e)
    {
       if (Serial.BytesToRead < 24000) return;
               ... //Recieve and process your data here
    }

例如,这里给出了24000