STM32Cube USBHID工程配置

基于STM32cubeMX工程配置 usb HID模式通讯配置

内容纲要
  1. RCC 配置
  2. PLL 时钟分频设置了 480MHz 主时钟,配置了PLL与时钟源为外部时钟HSE,这个软件会自动生成一个配置使用了三个参数的组合,计算最终的PLL 时钟,如果系统主时钟采用PLL,就是系统的主时钟了.计算公式: 25MHz / 5 * 192 / 2 = 480 MHz
  3. USB FS 配置这里根据目标板使用的是 USB_FS 或者 USB_HS 来确定,开发板使用的是USB_FS , 默认的中断优先级是 0,太高了,我们将其配置为 15
  4. USB HID 信息配置
  5. 将通用usb配置描述信息写入usbd_custom_hid_if.c :

    到这里我们就可以下一步了,打开刚才建立的工程,在 usbd_custom_hid_if.c 文件里,找到 CUSTOM_HID_ReportDesc_FS 这个函数,把刚才生成的报文文件覆盖掉函数里面的文件,代码如下:

    /** Usb HID report descriptor. */__ALIGN_BEGIN static uint8_t CUSTOM_HID_ReportDesc_FS[USBD_CUSTOM_HID_REPORT_DESC_SIZE] __ALIGN_END ={    0x06, 0x00, 0xff,              // USAGE_PAGE (Vendor Defined Page 1)    0x09, 0x01,                    // USAGE (Vendor Usage 1)    0xa1, 0x01,                    // COLLECTION (Application)    0x09, 0x01,                    //   USAGE (Vendor Usage 1)    0x15, 0x00,                    //   LOGICAL_MINIMUM (0)    0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)    0x95, 0x40,                    //   REPORT_COUNT (64)    0x75, 0x08,                    //   REPORT_SIZE (8)    0x81, 0x02,                    //   INPUT (Data,Var,Abs)    0x09, 0x01,                    //   USAGE (Vendor Usage 1)    0x15, 0x00,                    //   LOGICAL_MINIMUM (0)    0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)    0x95, 0x40,                    //   REPORT_COUNT (64)    0x75, 0x08,                    //   REPORT_SIZE (8)    0x91, 0x02,                    //   OUTPUT (Data,Var,Abs)    0xc0                           // END_COLLECTION};然后再修改将usbd_conf.h做对应修改:

    #define USBD_CUSTOMHID_OUTREPORT_BUF_SIZE      64

    #define USBD_CUSTOM_HID_REPORT_DESC_SIZE       34

    同时修改usbd_customhid.h文件中的发送与接收长度为64

    #define CUSTOM_HID_EPIN_SIZE                  0x40

    #define CUSTOM_HID_EPOUT_SIZE              0x40

    到这里基本就算做出一个USB设备了,我们编译下载程序看看。

版权声明

版权声明

内容来源及使用限制

欢迎访问 TomgZHE研习社(网址:https://blog.tomgzhe.com)。本网站部分文章内容源自网络,仅作学习交流与参考分享;若您发现有内容涉嫌侵权,请立即联系 tomgzhe@qq.com,我们将在接到通知后的 48 小时内核实并删除相关侵权内容。

软件资源相关规定

本网站为个人非盈利性质的站点,所有软件资源均来自网络。这些资源仅用于个人学习、研究和参考,严禁用于任何商业用途。您下载和使用本网站软件资源即表示您同意仅将其用于学习目的,若因违反此规定导致任何法律纠纷或损失,责任由您自行承担。

原创版权

本网站上的原创内容,包括但不限于文字作品、自行设计的图片、独家制作的音频视频等,其版权均归本网站所有。未经本网站书面授权,任何组织或个人不得擅自复制、转载、摘编、传播或以其他任何方式使用这些原创内容。如需使用,请提前与我们联系并获得书面许可,同时需在显著位置注明出处及作者信息。

转载与引用规范

若您需转载本网站文章,务必注明文章来源为 “[TomgZHE研习社],原文链接:[]”;对于有明确作者署名的文章,还需完整保留作者姓名。在引用本网站内容时,请确保内容准确无误,并遵循学术及行业的引用规范。

Like (0)
Donate 微信扫一扫打赏 微信扫一扫打赏 支付宝扫一扫打赏 支付宝扫一扫打赏
tomgzhe的头像tomgzhe
Previous 2025年9月12日 15:20
Next 2024年3月17日 20:34

相关推荐

发表回复

Please Login to Comment
联系我们

联系我们

400-800-6666

在线咨询: QQ交谈 邮件:tomgzhe@qq.com 工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
SHARE
TOP
蛇年新气象!从2025年2月起,本博客将在保留科技板块基础上,新增生活美学、个人成长等多元内容,希望能为大家带来更丰富的阅读体验,敬请期待!