打印
[USB驱动]

stm32f103c8t6做HID设备,如何设置report id

[复制链接]
5890|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ctfsoft|  楼主 | 2015-4-28 18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

我在网上下载的HID的例子,可以直接编译运行的,ReportDescriptor里面没有定义report id我就加上去,如下:0x85, 0x01, //   REPORT_ID (1)       
加上去后,可以正常编译,运行,PC上也可以识别到设备,但是读不到数据了(HID里面是自动不停的发数据到PC)。

另外,我在HID里面定义的数据长度是22,PC上到读到的数据长度是23,而且数据的第一位被插了一个0x00进来,比如说我发送数据为0x11,0x22,0x33,0x44....等,PC读到的数据是0x00,0x11,0x22,0x33,0x44。

问题:
1、多出来的这个字节,是不是因为我没有定义report id就被默认为report id为0?
2、如果我定义了report id,是不是我发送多少位数据,接收到也是多少位数据?并且第一位数据,就是report id?

@computer00

相关帖子

沙发
huangqi412| | 2015-4-28 19:26 | 只看该作者
圈圈书上应该是讲了的,楼主翻翻书

使用特权

评论回复
板凳
ctfsoft|  楼主 | 2015-4-28 20:07 | 只看该作者
huangqi412 发表于 2015-4-28 19:26
圈圈书上应该是讲了的,楼主翻翻书

圈圈的哪本书?在哪里买?我没有圈圈的书,我也是搜索资料的时候,发现圈圈是个牛人,所以@圈圈:lol

您有没有遇到过这个问题?

使用特权

评论回复
地板
huangqi412| | 2015-4-29 09:36 | 只看该作者
ctfsoft 发表于 2015-4-28 20:07
圈圈的哪本书?在哪里买?我没有圈圈的书,我也是搜索资料的时候,发现圈圈是个牛人,所以@圈圈

您 ...

你找找吧,不只有书,网页也有

使用特权

评论回复
5
ctfsoft|  楼主 | 2015-4-29 10:00 | 只看该作者
huangqi412 发表于 2015-4-29 09:36
你找找吧,不只有书,网页也有

谢谢,我昨天晚上看了书,提到了描述符,但是没有提到具体用法。网上也很多复制了书的内容。我再查查资料吧。我需要的是具体写一个描述报告的方法。

使用特权

评论回复
6
ctfsoft|  楼主 | 2015-4-29 11:55 | 只看该作者
huangqi412 发表于 2015-4-29 09:36
你找找吧,不只有书,网页也有

感谢版主,已经解决了,我添加了report id后,发的数据长度应该减1,现在可以正常出数据了。

使用特权

评论回复
7
huangqi412| | 2015-4-29 12:23 | 只看该作者
ctfsoft 发表于 2015-4-29 11:55
感谢版主,已经解决了,我添加了report id后,发的数据长度应该减1,现在可以正常出数据了。 ...

:D

使用特权

评论回复
8
zfmcs51| | 2015-9-5 16:11 | 只看该作者
我在HID里面定义的数据长度是6,PC上到读到的数据长度是7,而且数据的第一位被插了一个0x00进来,比如说我发送数据为0xa1,0xa2,0xa3,0xa4等,PC读到的数据是0x00,0xa1,0xa2,0xa3,0xa4

使用特权

评论回复
9
winid| | 2015-9-15 22:06 | 只看该作者
ctfsoft 发表于 2015-4-29 10:00
谢谢,我昨天晚上看了书,提到了描述符,但是没有提到具体用法。网上也很多复制了书的内容。我再查查资料 ...

你好我有和你一样的问题,能请教一下是怎么弄好的吗???

使用特权

评论回复
10
winid| | 2015-9-15 22:07 | 只看该作者
你好

使用特权

评论回复
11
zfmcs51| | 2015-9-15 22:14 | 只看该作者
你好,想请教你,我的问题和你一样,不知道你怎么解决的,可以分享一下吗?我发送0xa1,0xa2,0xa3,0xa4,0xa5,用bus hond测到的是0xa1,0xa2,0xa3,0xa4,0xa5,但在别人pc端的接收软件却是0x00,0xa1,0xa2,0xa3,0xa4,0xa5,也就是前面多一个0x00,我的发送字节数设定为5.

使用特权

评论回复
12
zfmcs51| | 2015-9-16 21:08 | 只看该作者
zfmcs51 发表于 2015-9-15 22:14
你好,想请教你,我的问题和你一样,不知道你怎么解决的,可以分享一下吗?我发送0xa1,0xa2,0xa3,0xa4,0xa5 ...

如果有相关问题的朋友,可以相互一起学习,我的qq:411762697.单片机发的数据始终在最前面多一个0x00.大概意思可能是这个是report id,但我们怎样才能把这个最前的report id号更改为其它任意的,比如report id=0x01.

使用特权

评论回复
13
ldk060| | 2016-6-12 16:21 | 只看该作者
ctfsoft 发表于 2015-4-29 11:55
感谢版主,已经解决了,我添加了report id后,发的数据长度应该减1,现在可以正常出数据了。 ...

楼主,请问repord id的值时多少啊?

使用特权

评论回复
14
小凤凤| | 2017-4-29 13:42 | 只看该作者
如果是多个ID你是怎么上报数据呢?

使用特权

评论回复
15
15389664934| | 2018-1-4 11:25 | 只看该作者
楼主,stm32f103c8t6的usb hid代码能否共享一下   623353034@qq.com

使用特权

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

本版积分规则

3

主题

9

帖子

2

粉丝