查看: 3866|回复: 1

[其他] 请问如何在HID设备中多添加一个report ID呢

[复制链接]

该用户从未签到

63

主题

263

帖子

0

高级会员

Rank: 4

积分
921
最后登录
2021-2-23
发表于 2017-4-14 10:38:21 | 显示全部楼层 |阅读模式
求助各位大神专家!我们现在用LPC11U24开发USB键盘,需要实现的功能是让设备既能做鼠标又能做键盘(既键盘上有快捷键,直接变成鼠标的左右击这样)。
参考的代码是上面这个,是比较老的例程代码了
我们的设备会用到两个report。
按照LPC11Uxx文档及USB ROM接口的描述,我们在初始化 usb hid的时候配置了两组report data和 hid init param, 如下:
USB.jpg
usb初始化和hid初始化返回值都是成功的,但是在pc枚举的过程中看到pc针对两组report id进行SetIdle和Get Report Rescriptor的过程中,设备端只响应了report 0,而对report 1没有返回正确的结果,导致枚举过程失败,如下
USB_.jpg
我也尝试过使用重写HID_GetReportDesc和HID_SetIdle callback来配置,结果也是一样,可以抓包看见pc发了SET idle和Getreport descriptor,但是设备端在report = 1时不会调用相应的callback函数。

请问配置过程是否正确,是否还有需要修改的配置或者接口?求助各位大神帮忙! 十分感谢!

我知道答案 目前已有1人回答
回复

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24871
最后登录
2025-7-18
发表于 2017-5-3 11:16:40 | 显示全部楼层
楼主你好!
不知道你现在的代码是否是基于官方的代码。你给的链接无法打开。
如果分别定义的话,是否两个report都能正确工作呢?
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-19 20:46 , Processed in 0.086688 second(s), 23 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表