c-如何使USB到串行适配器更快,ReadFile执行时间太长



我尝试每1ms与Arduino通信一次。Arduino在发送命令方面做得很好,但我的电脑不会每1ms读取一次数据。它通常需要3-4毫秒,到那时我的Arduino已经发送了一堆数据。

我试着使用EV_RXCHAREV_CTS,但还是一样,Windows响应命令的时间太长了。

t = clock();
ReadFile(hComm, &s, sizeof(s), &NoBytesRead, NULL);
t = clock() - t;
double time_taken = ((double)t)/CLOCKS_PER_SEC; // in seconds usualy 0.003 

我不确定问题是在Windows驱动程序还是USB到UART ch340芯片。

也许你可以向我推荐其他以1毫秒为间隔进行交流的方式?

仅供将来参考。";"问题";处于USB 1.1轮询速率。最大USB 1.1轮询速率为1000Hz,因此ch340(arduino的芯片(不可能达到低于1ms的延迟。。。USB 2.0可能会工作,因为8khz的轮询速率。

最新更新