打印
[AT32F415]

关于AT32F415-HID设备的讨论

[复制链接]
806|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 卡文迪许怪 于 2022-11-7 10:30 编辑

#技术资源#最近在做AT32F415的复合设备(应该是),HID数据通信+HID键盘,看来资料实现这个有两种方式

  • 使用一个配置,两个接口
第一个接口使用2个端口(0x81、0x01),HID类描述符做HID数据通信。
第二个接口使用一个端口(0x82),做HID键盘。
这样的话,应该要做两个报告描述符,但是我看了AT32F415所有的历程,基本上都是使用一个报告描述符的(找不到放两个的地方)。

  2.使用一个配置,一个接口
只使用一个接口,这个接口设置3个端点(0x81、0x01)数据通信,(0x82)做HID键盘。

如果这样的话,就需要做一个复合是报告描述符(已经做了)。
但是他的数据发送没什么问题,接收任然找不到接口,以及键盘数据上传不起来。
希望AT32工程师和各位大能给予帮助,感谢!!



8849ae04ce9944929646344667e7f37.png (13.56 KB )

a

a

使用特权

评论回复
沙发
tanleitanlei| | 2022-11-7 11:10 | 只看该作者
建议使用复合设备实现此功能,可以参考BSP内composite_vcp_keyboard例程,只需要将VCP改为HID设备就可以,描述符可以参考其他HID的描述符,注意描述符中的interface编号排布。如果识别到复合设备后,键盘和HID这两个设备都会发对应端点的in包下来,MCU端只要将数据写到对应的fifo内,当接收到in包后数据就会自动发送给主机端。你目前的问题可能有以下两个点可以排查:1.主机端是否有发in包给设备??  2.设备是否正确将数据写进对应的fifo?????

使用特权

评论回复
评论
卡文迪许怪 2022-11-7 15:58 回复TA
十分感谢你的回答,但是还是觉得,如果有一个键盘加+鼠标的历程,改起来可能会容易一些。 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

4

帖子

0

粉丝