gpt4 book ai didi

C# COM 端口通信 - USB 到串行适配器的错误

转载 作者:行者123 更新时间:2023-11-30 22:36:46 26 4
gpt4 key购买 nike

场景如下 - 我有一个从 COM 端口读取数据的 C# 应用程序。大多数时候,我在带有串行端口的机器上使用带有串行适配器的设备。然而,带有串口的机器越来越难买到,所以我开始使用带有 USB/串口连接的机器。

在某些情况下,我拥有的 C# 代码可以在“真正的”串行连接下正常工作,但在 USB/串行连接下会失败。数据以碎片形式出现,其中数据的第一部分(可能是前 1 或 2 个字符)没有其他内容。

我正在使用像 comport.ReadExisting() 这样的基本方法从端口获取数据。这是问题的一部分吗?是否有其他方法可以保证所有数据都在一个字符串中读取?

最后,我想补充一点,我已经尝试过设备管理器中的一些 USB/串行设置,并且在使用 good, ole' hyperterminal 时数据正常。 . .所以它必须是代码中的东西。

最佳答案

对于 USB 串行转换器,您必须设置接收超时,因为数据可以在 Windows 不知道的情况下在 USB 设备中保存很长时间。真正的串行端口将数据保存在 Windows 驱动程序可以看到的 16550 FIFO 中。

关于C# COM 端口通信 - USB 到串行适配器的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6822980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com