|
发表于 2015-1-27 09:02:18
|
显示全部楼层
谢谢楼主分享,请教一个问题:
楼主代码中,安卓端收发函数如下:
public void SendData(byte[] data) {
Log.d(TAG,"Send Data");
myDeviceConnection.bulkTransfer(epOut, data, 4, TIMEOUT);
}
public void RecData() {
byte[] data = new byte[0xFF];
while (true) {
myDeviceConnection.bulkTransfer(epIn, data, 4, 99000);
for (int i = 0; i < 4; i++) {
Log.d(TAG, "data[" + i + "] = " + data[i]);
}
SendData(data); //把接收到的发回去
}
}
其中:
主机发送:myDeviceConnection.bulkTransfer(epOut, data, 4, TIMEOUT);
主机接收:myDeviceConnection.bulkTransfer(epIn, data, 4, 99000);
根据函数定义,4应该是发送和接收长度,这个长度和配置时的HID报告描述符中的数据长度是一致吗?还是说不一定?
下位机代码看了一下,没有找到HID报告描述符的定义,在usbd_desc.c或者usbd_desc.h中只找到配置描述符定义,楼主可否提示下HID报告描述符的位置。
谢谢
------------------编辑原因,修改错字
|
|