libusb:libusb_bulk_transfer的timeout参数问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012247418/article/details/86252528

timeout参数

1. bulk in:在指定的timeout参数时间内会一直阻塞等待接收,0为一直阻塞等待。

while(1)

{

rec = libusb_bulk_transfer(dev_handle, 0x81, rev_buf, 200, &size, 0);

if(rec == 0)

{

printf("rev sucess,length:%d ,data is: %s\n",size,rev_buf);

printf("\n\n");

}

else

{

printf("rev faild\n");

sleep(1)

}

}

实验,Ubuntu环境下。

1)将timeout设置20ms,sleep()设置为20ms有较好的响应效果,偶尔有丢包。

2)将timeout设置为0,不使用sleep(),响应效果非常好,未发现丢包现象。

2. bulk out:timeout设置为0即可

猜你喜欢

转载自blog.csdn.net/u012247418/article/details/86252528
今日推荐