STM32F407的USB_HID 基础配置
示例详解: (参考 : https://blog.csdn.net/zhanglifu3601881/article/details/89675307)
工具:STM32CubeMX5.4
单片机:STM32F407VET6
一、硬件电路:

二、STM32CubeMX配置
外部晶振

烧录接口

USB接口

HID模式,参数默认,后面程序里改

时钟树配置

生成代码文件位置,程序编译环境选择
STM32CubeMX5.4用的固件是STM32Cube FM_F4 V1.24.2

仅加入需要库文件
外设文件生成单独文件

配置完成,生成代码,打开

编译下载到单片机,然后通过USB线接入到PC,PC端显示:

三、修改程序
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

2.修改HID数据字节,其中USBD_CUSTOM_HID_REPORT_DESC_SIZE 33U 是前面描述符的字节数

3.修改发送接收数据长度,改成64字节

四、配置完成
更改完成,编译下载,这时PC端显示OK

源代码已上传我的公开资源

STM32F407的USB_HID 基础配置STM32CubeMX相关推荐

  1. STM32CUBEMX配置教程(一)基础配置

    STM32CUBEMX配置教程(一)基础配置 基于STM32H743VI 使用STM32CUBEMX两年了,始终觉得这个工具非常的方便,但因为不是经常使用,导致有些要点总是会有些遗忘,因此写下这一系列 ...

  2. STM32F407高级定时器-死区时间研究-STM32CubeMX

    距离上次写笔记,已经过去好长时间了 中间也折腾过不少东西,但是都没咋整理,主要是这中间都是在干活儿,不是自己想要研究的,也没想着要写. 从去年10月份开始想要学习FOC,10月份研究了一个月,到11月 ...

  3. FreeRTOS配置文件有哪些基础配置

    关注+星标公众号,不错过精彩内容 作者 | strongerHuang 微信公众号 | strongerHuang FreeRTOS中"FreeRTOSConfig.h"配置的内容 ...

  4. 第一章 stm32 cubemx基础配置实验以及proteus 8的使用

    第一章 stm32 cubemx基础配置实验以及proteus 8的使用 文章目录 第一章 stm32 cubemx基础配置实验以及proteus 8的使用 前言 一.STM32 Cubemx基础配置 ...

  5. 静态配置_【实验】华为静态路由基础配置

    关注我,你的眼睛会怀孕 一.静态路由功能介绍 静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络.当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要 ...

  6. 计算机网络技能专项训练一:基础配置

    1 专项一 基础配置: 2 1.虚拟机的设置 3 虚拟网络编辑器-设置子网地址,确保client与server在一个子网中,否则client自动获取的 ip与server不在一个子网中. 4 将虚拟 ...

  7. 思科路由器DHCP基础配置

    思科路由器DHCP基础配置 实验要求:clinet向server请求IP地址 1.client配置 2.server配置 定义地址池 调试命令 问题:前面不是设置192.168.1.1到192.168 ...

  8. 【Raspberry pi】系统安装及基础配置

    1.系统安装 见官网:http://www.raspberrypi.org/quick-start-guide 2.基础配置 转载自http://www.eeboard.com/bbs/thread- ...

  9. Katalon Studio自动化测试框架使用【1】--- 环境安装以及基础配置(MacOS)

    一.Katalon Studio简介 Katalon Studio是一款免费的自动化测试工具,可以安装在windows.macOS.Linux操作系统上,结合了selenium和appium测试框架, ...

最新文章

  1. python3字典详解_python3中字典详解
  2. Linux - Ubuntu
  3. 从Grid R-CNN到Grid R-CNN Plus:基于网格的目标检测演化
  4. GitHub 标星 8w!学完这份指南后,你就可以去 Google 面试了!
  5. hierarchy change - ERP side debugging
  6. win mysql 2003错误_windows MySql 报1067错误 2003错误
  7. ECCV 2020 论文大盘点-3D人体姿态估计篇
  8. 基于id3算法根据房价数据进行画图预测python
  9. 广西国际商务职业技术学院官网计算机功课,2019—2020学年秋季学期线上线下混合式教学课程听课情况汇报...
  10. TCP通信过程中各步骤的状态---(简单解释)
  11. 淘宝开放接口api分享
  12. 搭建sspanel 教程三(后端教程)
  13. java pojo类
  14. 程序员最爱的 10 个在线社区,你去过几个?
  15. 如何在毕业论文Word中插入图表目录
  16. 如何打造一个高效的研发团队
  17. coreseek分词
  18. VPS常用网络测试工具
  19. 开发工具之IAR下载与安装
  20. DNS 服务器 清除缓存

热门文章

  1. android浏览器全屏设置分辨率,小屏幕大世界 傲游云浏览器Android全屏模式
  2. MATLAB在安装时需要选择安装的产品
  3. 2020年中国数字经济区域发展竞争格局报告
  4. php会员到期怎么判断,织梦用php判断检测会员是否登录并返回会员相关信息
  5. php 会员 开源,会员组_POSCMS_PHP开源_迅睿CMS系统
  6. 海洋CMS忘记后台管理员密码解决方法
  7. 【Vue】后台管理系统
  8. requests高阶 BS4
  9. 单片机24秒倒计时c语言,单片机汇编语言24秒倒计时程序
  10. 实现点击不同的按钮显示不同的内容【同一页面】web