linux usb 同步传输,从设备到主机的用户模式USB等时传输

博主正在尝试通过Linux的USB设备文件系统与USB音频设备进行接口操作,实现了设备枚举和接口设置。在进行同步数据接收时遇到困难,特别是关于如何填充usbdevfs_urb结构以及如何正确提交和等待URB完成。尝试提交URB后收到ENOSPC错误,即USB总线带宽不足,但设备是唯一连接的,寻求解决方案。
摘要由CSDN通过智能技术生成

我目前正在尝试与用户土地上的USB音频设备接口。目前,我已经完全枚举了该设备,并且已经设置了接口并将备用接口设置为非零带宽备用接口。

首先,我不得不说我不能使用libusb之类的东西。我已通过Linux的USB设备文件系统执行此操作。

据我所知,我准备开始接收同步数据。但是,我几乎找不到有关如何进行同步传输的信息。

据我所知,我需要填充usbdevfs_urb结构,但是我完全不确定如何准确填充该结构。

另外,一旦我填写了这个结构,我就认为我需要调用以下内容:

int retSubmit = ioctl( fd, USBDEVFS_SUBMITURB, &usbRequest );

然后提交后,我可以等待请求完成使用

USBDEVFS_REAPURBNDELAY

对于REAPURBNDELAY,我到底需要传递什么参数?

我什至还在吠叫正确的树吗?

任何信息将不胜感激。

提前致谢!

编辑:

我尝试按以下方式进行同步传输:

usbdevfs_urb& urbRequest = *(usbdevfs_urb*)malloc( 384 );

urbRequest.type = USBDEVFS_URB_TYPE_ISO;

urbRequest.endpoint = mpEndpoint->GetEndpointAddress();//mpEndpoint->GetEndpointIndex();

urbRequest.status = 0;

urbRequest.flags = U

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值