请教D12能同时开三个端点并且其中两个中断可以吗

[复制链接]
3267|6
 楼主| wjl2008 发表于 2010-1-10 14:43 | 显示全部楼层 |阅读模式
本帖最后由 wjl2008 于 2010-1-10 14:45 编辑

分数有限没法多给了!望多多包涵!
我现在遇到的情况是,D12的0端点输入输出都是控制传输,1端点的包长是16,2端点的包长是64,可是当1和2端点的输入输出要是中断传输时,进不了端点的中断,并且向2端点发送16个字节后缓冲区就满了,仅将端点1改成批传输后就一切正常了。难道一个设备不能同时有两个端点作中断传输吗?
协议上我也没有地方有限制说明呀
希望大家指点一下,不胜感激!:handshake
computer00 发表于 2010-1-13 10:41 | 显示全部楼层
可以两个同时做中断端点的呀...
 楼主| wjl2008 发表于 2010-1-13 17:04 | 显示全部楼层
我想应该是可以的,协议上没有地方提到不能这么做,但是真不知道是什么原因引起的的呢?
我现在的情况是:
一,端点1输入输出是中断,端点2输入输出是中断时,端点2输入有问题,输出没有发现问题;
二,端点1输出是中断,端点1输入是批量,端点2输入输出是中断时,没有发现问题。
帮忙分析一下可能是什么原因呢?
还望00指点!:handshake
computer00 发表于 2010-1-13 18:35 | 显示全部楼层
可能是你的驱动不支持?对于设备来说,设置成中断还是批量端点,都是一样的。不同的地方在于主机端的驱动,查询的方式不一样。
 楼主| wjl2008 发表于 2010-1-13 21:52 | 显示全部楼层
特此感谢00的指点!
我做的是HID类,是系统自带的驱动吧,会支持吗?
computer00 发表于 2010-1-14 12:40 | 显示全部楼层
系统自带的驱动,那么每一个HID接口,只能支持一个中断输入和一个输出端点...如果你只有一个接口的话,当然就不能支持那么多中断端点了...

如果你要多个中断端点的话,那只能在配置描述符里使用更多的接口。如果只有一个接口,又想发送不同的报告,可以在报告描述符里增加报告ID。

如果你有圈圈的书的话,里面有实际的例子的,就是鼠标和键盘结合的那一章。
 楼主| wjl2008 发表于 2010-1-17 12:56 | 显示全部楼层
谢谢00!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

12

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部