在 usbx_customhid_thread_entry 中实现 IN 端点(Endpoint1)向 PC 机 1S 发送一次数据功能。添加 HID report 描述符,我们使用 USB 官网 HID 报告描述符工具生成自定义 Custom HID report 描述符,该工具可以到网址 https://www.usb.org/document-library/hid-descriptor-tool 下载。根据 USB 规范一个 HID 报...
非常不错。
Middleware and Software Packs这里选择USB_DEVICE,Mode这里选择Custom HID,参数如果懂可以根据需求改,不懂保持默认,后边我们在代码里改也可以。 之后配置好时钟和其他设置,生成代码即可。 2、 我用的vscode+platformio开发环境,新建工程并打开导出的代码。Cubemx和platformio的文件夹结构不同,需要挪一下文件,主要是将Cor...
点击1处,选中后Device(FS),3处选择HID,其他参数默认。 配置USB 时钟 USB时钟需设置为48MHz。 增加堆栈大小,防止溢出 3. 编辑代码 更改为键盘。 设备描述符改为键盘 usbd_hid.c文件中USBD_HID_CfgFSDesc[USB_HID_CONFIG_DESC_SIZ]对应值由0x02改为0x01。 报告描述符改为键盘 usbd_hid.c文件中HID_MOUSE...
开启中间件USB_DEVICE,选择usb类为自定义HID(custom HID),BINTERVAL为响应主机发送数据的延时时间,尽量越小越好。 另外两个参数是后面描述符所需要的大小,现在就修改即可。 设备描述符中的内容均可修改,VID和PID是上位机识别HID设备的识别码,需要记住。
USBD_CUSTOMHID_OUTREPORT_BUF_SIZE,比较好理解,设置的是发送缓冲区的大小,HID一次最多可以发送64个字节,我们设置为最大值。 在另一个选项卡中,我们可以看到下面几个参数:VID、PID,以及设备标识,这里我们都不修改。 修改时钟设置,把usb时钟设置为48M: ...
STM32的USB例程修改步骤 以下是笔者将ST的Custom_HID例程修改为“自定义USB设备”例程时总结出来的,因为笔者也是刚刚学USB开发不久,某些方面理解错误在所难免,请各位大虾指正。 一、usb_desc.c文件 根据你程序使用的通信方式修改。usb_desc.h文件中定义要根据usb_desc.c文件中的数组的大小;ConfigDescriptor[SIZ_CONFI...
connectivity这里打开usb,勾选Device,参数保持默认即可。 Middleware and Software Packs这里选择USB_DEVICE,Mode这里选择Custom HID,参数如果懂可以根据需求改,不懂保持默认,后边我们在代码里改也可以。 之后配置好时钟和其他设置,生成代码即可。 2、我用的vscode+platformio开发环境,新建工程并打开导出的代码。Cubemx和pla...
基于STM32的USB HID(Human Interface Device)设备开发可以让开发者创建各种输入设备,如键盘、鼠标、游戏手柄等。使用STM32的USB HID功能,可以通过USB接口将设备连接到计算机,并与计算机进行交互。在本文中,…
STM32的USB库将SETUP包放在一起处理,首先是枚举阶段 USBD_OTG_ISR_Handler --> gintr_status.b....