gpt4 book ai didi

c++ - 读取文件 Rs232 太慢

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:26:53 24 4
gpt4 key购买 nike

我在 Windows 8 上执行程序时遇到问题;我使用 ReadFile 从 RS232 串行端口检索数据。

我的代码多年来一直在从 Windows Xp 到 Win 7 的操作系统上运行,没有任何问题,但现在 ReadFile 操作总是花费 94 到 100 毫秒,而它在以前的操作系统上非常快或立即:

我尝试修改我的超时以强制 1 毫秒,但结果始终相同:

GetCommTimeouts(Handle, &cto);
cto.ReadIntervalTimeout=MAXDWORD;
cto.ReadTotalTimeoutMultiplier=0;
cto.ReadTotalTimeoutConstant=0;
cto.WriteTotalTimeoutMultiplier=0;
cto.WriteTotalTimeoutConstant=0;
if(SetCommTimeouts(Handle, &cto) == 0)

// And the read function :
rOL.Offset = 0;
rOL.OffsetHigh = 0;
if (ReadFile(Handle, &byte, 1, &i, &rOL) == TRUE)

在阅读了很多帖子和所有 MSDN 后,我没有找到任何解决方案!

最佳答案

我找到并纠正了我的问题,感谢 Hans Passant 为我指出了正确的方法!

所以这是一个驱动程序问题,最大的问题是专为 Windows 8 和 7 制作并在 Windows Update 和 catalog.update.microsoft.com 上可用的最新 Prolific 驱动程序有问题:

所以我降级到 2010/12/03 版本,现在它运行良好。

我做了一个程序,你可以在这个 zip 中找到工作驱动程序:

http://www.soft-control.com/media/exe_soft/sav/ProlificDowngrade.3.11.zip

我希望它能帮助任何关心这个问题的人!

关于c++ - 读取文件 Rs232 太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17971365/

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