最近在写android usb与HID设备通讯的小程序,程序已经可以枚举打开HID设备了,但是在发送数据到HID的时候,一直不成功。。
现在有几个问题请教大家:
在程序里面我的:
ep.getType()==UsbConstants.USB_ENDPOINT_XFER_BULK
返回 false ,这是不是不能用批量传输的方法发送和接受数据?
int i=myDeviceConnection.bulkTransfer(epOut, sendout, sendout.length, 0);
实际上用它发送数据 i返回的一直是-1
ep.getType()==UsbConstants.USB_ENDPOINT_XFER_INT 这个返回的是true,是不是意味着只能用中断传输的方法发送数据?
int k=connection.controlTransfer(0x21, 0x09,0, 0, cmd, cmd.length, 0);
用中断传输方法返回的是个正常的值,但是返回的数据都是0,相当于没发送成功
在controlTransfer(int requestType, int request, int value, int index, byte[] buffer, int length, int timeout) 方法里面
前四个参数,除了第三个参数能随便改以外,其它三个改动任意一个,K返回的都是-1,这是不是说明我的这三个参数都是对的? 那第三个参数谁能帮我确定?
我这个有例子,为了保证原创不发附件,传送网友自己下载点击打开链接
本文作者分享了在开发Android USB与HID设备通讯小程序时遇到的问题,已经能够枚举并打开HID设备,但在尝试发送数据时遭遇困难。文章中提到在使用controlTransfer方法时,尽管大部分参数看似正确,但改变任一参数都会导致返回值为-1,作者对此感到困惑,尤其是关于第三个参数的疑问,期待社区的帮助。

918

被折叠的 条评论
为什么被折叠?



