阅读:2291回复:4
请帮解决一个HID设备无法正常加载的问题,谢谢
做一个最简单的HID设备,设备、配置、接口、HID、端点描述符都查过很多遍了,设备管理器显示出是HID设备,可就是有?号,真不知怎么回事。
在线仿真调试,发现读取配置描述符后来了一个SET_CONFIGURATION 1后又来了一个端点0的SET_IDLE(回传停滞),接着来了一个SET_CONFIGURATION 0,再接下来就是挂起就没反应了。 是不是描述符没有起作用呢?我把端点描述符注释掉还是一个样子。可是大部分都是照抄书上的,仅改了一些基本的东西。 我不知道要怎样发送描述符,看书上是设备、配置、接口、HID、端点描述符这几个一起发的,而报表描述符是另外发的。可是主机根本就没有要过报表描述符。是不是可把这几个分开发呢? 现已查明,如果不响应Set_Idle,则主机有一段等待时间,在这段时间里,设备正常,用USB VIEW能够读到正确信息。基本上肯定是在Set_Idle之后挂掉的。请各位指点!谢谢! 问题已经解决,原因是报表描述符长度我用的是34,实际上是swap(34) [编辑 - 12/19/03 by zhuge36] |
|
沙发#
发布于:2003-12-18 09:54
好像是没有找到驱动程序吧
你的VID、PID都为0,如何找到驱动程序呢? |
|
|
板凳#
发布于:2003-12-18 12:00
呃
|
|
|
地板#
发布于:2003-12-18 12:31
你既然在hid descriptor中提到了report,那么怎么没有看到你的report descriptor?
还有,你在get_descriptor中要响应get_HID和get_REPORT的命令,分别返回的是hid descriptor和report descriptor,不知道你做了没有? |
|
|
地下室#
发布于:2003-12-18 14:32
set idle 响应了吗?
|
|