记录stm32基于hal库使用usb hid

本文介绍了如何使用带有USB接口的板子制作DIY HID设备,重点在于选择CubMX的HID配置,修改报告描述符并利用dt.exe生成工具。通过调整报告描述符实现数据上传,特别提到在处理MPU6050陀螺仪数据时,需要将其转换为适合USB传输的格式。此外,还实现了蓝牙无线连接,用于游戏摇杆应用。
摘要由CSDN通过智能技术生成

1、买一块带有usb口的板子,貌似没法映射到原本串口的io口

2、cubemx选usb device要选hid而非custom hid,方便diy

3、生成之后只需去hid.c里面修改report desc,并且将report desc size一并找到修改为自己的描述符数组大小,一定要一模一样。

4、生成描述符用dt.exe,忘记细节放个example在旁边参照着写

5、最后自己调用sendreport函数按照描述符写的顺序上传数据,注意的就是数据大小范围,比如描述符里一个数据范围是-127到127,则其为一字节,那我们上传的数据类型就为int8_t这样的。一些简单的如鼠标按键点击的0,1两种状态即1bit的,可以将三个按键放一起再补充五个常量变成一个字节的数据描述mouse的button

6、自己用陀螺仪mpu6050做了一个摇杆玩卡车游戏,还加了两蓝牙做成无线的摇杆,中间要注意的是usb上传的是一字节,而原始mpu6050读到的是int或者float,在蓝牙传输前最好就做好处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值