打印
[USB编程]

USB复合设备HID和MSC的读写问题

[复制链接]
3978|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ticomi|  楼主 | 2015-2-10 15:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在设备端实现了USB的复合模式, 自定义HID+MSC,单独模式时都正常,复合模式时使用BUS Hound查看都正常,U盘也正常;但是计算机端软件无法找到HID设备,更无法读写HID。


我查看资料显示这个HID设备被计算机端独占了,所以没有办法实现计算机端软件再次打开这个HID设备,这样我就没有办法使用这个HID设备!


请问这种情况是怎么解决呢?我就是希望通过HID读写数据,U盘传输大量数据!!
非常感谢!

相关帖子

沙发
bestcf| | 2015-3-12 22:15 | 只看该作者
楼主你的问题,解决了吗?我也遇到同样的问题

使用特权

评论回复
板凳
ticomi|  楼主 | 2015-3-13 08:05 | 只看该作者
bestcf 发表于 2015-3-12 22:15
楼主你的问题,解决了吗?我也遇到同样的问题

解决了,在计算机端的软件问题!

使用特权

评论回复
地板
bestcf| | 2015-3-16 17:26 | 只看该作者
ticomi 发表于 2015-3-13 08:05
解决了,在计算机端的软件问题!

方便发个工程参考给我吗?我的邮箱:bestcf@163.com

使用特权

评论回复
5
ticomi|  楼主 | 2015-3-17 08:07 | 只看该作者
bestcf 发表于 2015-3-16 17:26
方便发个工程参考给我吗?我的邮箱:

是公司的项目,不方便发出来。你可以先试着进行HID通讯,网上有很多的资料,如果单独测试成功,将设备端改为复合模式后需要在计算机端的查找HID设备函数出注销一个函数的参数即可。

SetupDiGetClassDevs(&HidGuid,  //A pointer to the GUID for a device setup class or a device interface class.
      NULL,       //A pointer to a NULL-terminated string that specifies:
      NULL,       //A handle to the top-level window to be used for a user interface
      /*DIGCF_PRESENT |*/ DIGCF_INTERFACEDEVICE);

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

852

帖子

4

粉丝