阅读:1237回复:1
我怎么才能知道USB的一个通道上什么时候有数据到达?
以前的程序是基于串口的,其中有个线程用来循环读数据,通过调用WaitCommEvent来知道什么时候有数据到达了才去Read。但是现在要改成基于USB的,我怎么能实现上面的功能呢?我怎么才能知道在哪个通道上有数据到了?不会是让我一直循环读吧?那样很浪费资源阿。
|
|
沙发#
发布于:2002-03-29 23:36
你要使用USB还有好多东西要学呀。
简单的说,其实PC机的USB接口都是USB HOST,所以发送与接收都是PC端控制的,要接收数据先要向USB设备发出请求,如 ReadFile(g_hUsb,(void *)((DWORD)pBuffer+dwI),cbBytes,&dwBytesRet,NULL); 也是开个线程在等待,需要接收的数据完成就会返回,至于USB数据接收过程是底层驱动做的事情,不需要你在程序中干预。 |
|