打印
[STM32F4]

USB_HID 基础配置STM32CubeMX

[复制链接]
1654|45
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tpgf|  楼主 | 2021-9-6 15:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
STM32F407的USB_HID 基础配置
示例详解: (参考 : https://blog.csdn.net/zhanglifu3601881/article/details/89675307)
工具:STM32CubeMX5.4
单片机:STM32F407VET6
一、硬件电路:


使用特权

评论回复
沙发
tpgf|  楼主 | 2021-9-6 15:22 | 只看该作者
二、STM32CubeMX配置
外部晶振


使用特权

评论回复
板凳
tpgf|  楼主 | 2021-9-6 15:22 | 只看该作者
烧录接口的配置


使用特权

评论回复
地板
tpgf|  楼主 | 2021-9-6 15:23 | 只看该作者
USB接口的配置


使用特权

评论回复
5
tpgf|  楼主 | 2021-9-6 15:23 | 只看该作者
HID模式,参数默认,后面程序里改


使用特权

评论回复
6
tpgf|  楼主 | 2021-9-6 15:23 | 只看该作者
时钟树配置


使用特权

评论回复
7
tpgf|  楼主 | 2021-9-6 15:23 | 只看该作者
生成代码文件位置,程序编译环境选择
STM32CubeMX5.4用的固件是STM32Cube FM_F4 V1.24.2


使用特权

评论回复
8
tpgf|  楼主 | 2021-9-6 15:23 | 只看该作者
仅加入需要库文件
外设文件生成单独文件


使用特权

评论回复
9
tpgf|  楼主 | 2021-9-6 15:24 | 只看该作者
配置完成,生成代码,打开


使用特权

评论回复
10
tpgf|  楼主 | 2021-9-6 15:24 | 只看该作者
编译下载到单片机,然后通过USB线接入到PC,PC端显示:


使用特权

评论回复
11
tpgf|  楼主 | 2021-9-6 15:24 | 只看该作者
三、修改程序
1.加入设备描述符:

0x05, 0x8c, /* USAGE_PAGE (ST Page) /
0x09, 0x01, / USAGE (Demo Kit) /
0xa1, 0x01, / COLLECTION (Application) /
/ 6 */

// The Input report
0x09,0x03, // USAGE ID - Vendor defined
0x15,0x00, // LOGICAL_MINIMUM (0)
0x26,0x00, 0xFF, // LOGICAL_MAXIMUM (255)
0x75,0x08, // REPORT_SIZE (8)
0x95,CUSTOM_HID_EPIN_SIZE, //0x95,0x16, REPORT_COUNT (20)
0x81,0x02, // INPUT (Data,Var,Abs)
//19
// The Output report
0x09,0x04, // USAGE ID - Vendor defined
0x15,0x00, // LOGICAL_MINIMUM (0)
0x26,0x00,0xFF, // LOGICAL_MAXIMUM (255)
0x75,0x08, // REPORT_SIZE (8)
0x95,CUSTOM_HID_EPOUT_SIZE, //0x95,0x16, REPORT_COUNT (20)
0x91,0x02, // OUTPUT (Data,Var,Abs)
//32



使用特权

评论回复
12
tpgf|  楼主 | 2021-9-6 15:24 | 只看该作者
2.修改HID数据字节,其中USBD_CUSTOM_HID_REPORT_DESC_SIZE 33U 是前面描述符的字节数


使用特权

评论回复
13
tpgf|  楼主 | 2021-9-6 15:25 | 只看该作者
3.修改发送接收数据长度,改成64字节


使用特权

评论回复
14
tpgf|  楼主 | 2021-9-6 15:25 | 只看该作者
四、配置完成
更改完成,编译下载,这时PC端显示OK

使用特权

评论回复
15
afei8856| | 2022-1-27 10:38 | 只看该作者
有么有试过鼠标或者键盘的唤醒功能呢

使用特权

评论回复
16
phoenixwhite| | 2022-12-1 17:56 | 只看该作者
怎么修改cube生成的hid设备实现通信

使用特权

评论回复
17
sdlls| | 2022-12-1 22:37 | 只看该作者
在哪里定义STM32 USB HID设备缓冲区地址?

使用特权

评论回复
18
macpherson| | 2022-12-2 19:19 | 只看该作者
如何使用STM32的USB库支持延迟HID的GET?  

使用特权

评论回复
19
kkzz| | 2022-12-2 20:43 | 只看该作者
想实现USB复合设备,使用STM32Cube.求助

使用特权

评论回复
20
beacherblack| | 2022-12-2 22:53 | 只看该作者
如何用cubeMx生成一个STM32F103C8的虚拟串口工程  

使用特权

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

本版积分规则

1931

主题

15650

帖子

12

粉丝