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

 找回密码
 我要注册
搜索
热搜: USB学习板
查看: 4285|回复: 1
打印 上一主题 下一主题

HID读写通信实验不能读写大于64字节的数据吗

[复制链接]

4

主题

0

好友

28

积分

产品用户

Rank: 4

跳转到指定楼层
楼主
发表于 2013-5-2 10:20:10 |只看该作者 |倒序浏览
在学习中发现,例子中提供的读写hid例子当写入数据长度超过64字节时,也能写入只能读取64个字节时后面读出来的值有问题,这个是下位机程序的问题不。

会提示弹出只能为64个字节,如果点击确定了还是可以写入的。
回复

使用道具 举报

6

主题

0

好友

1158

积分

管理员

Rank: 9Rank: 9Rank: 9

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

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

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

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

USB开发网 (渝ICP备09006681号-4)

GMT+8, 2024-4-29 06:36 , Processed in 0.050418 second(s), 18 queries .

百合电子工作室版权所有
回顶部