USB论坛-百合电子工作室USB专题站

标题: HID读写通信实验不能读写大于64字节的数据吗 [打印本页]

作者: tangtm    时间: 2013-5-2 10:20
标题: HID读写通信实验不能读写大于64字节的数据吗
在学习中发现,例子中提供的读写hid例子当写入数据长度超过64字节时,也能写入只能读取64个字节时后面读出来的值有问题,这个是下位机程序的问题不。

会提示弹出只能为64个字节,如果点击确定了还是可以写入的。
作者: baiheee    时间: 2013-5-2 10:51
您好,HID设备的数据包大小是由报告描述符决定的,不是可变长度的,如果想要收发数据包的长度可变,可以定义多个输入和输入报告,不同报告用报告ID区分,但是由于HID的非零端点用的是控制传输,而全速控制传输最大包大小是64字节,学习板EASY USB D12所用的USB接口芯片最快也只能支持全速传输,所以不能传输大于64字节的数据包。如果要传输大于64字节的数据,需要拆包后分开发送。

“会提示弹出只能为64个字节,如果点击确定了还是可以写入的”是因为VC程序里我加入了判断发送编辑框里字节数大小的功能,如果大于64,那么只发送前面的64个字节。

另外提一下,如果想实现数据包大小可变,而事先又不知道会有哪几种长度,那HID设备类就不适合了,应该使用厂商自定义USB设备来实现,不过这需要自己编写Windows驱动程序。




欢迎光临 USB论坛-百合电子工作室USB专题站 (http://usb.baiheee.com/usb_bbs/) Powered by Discuz! X2.5