1.HID定义的设备类 上面是HID定义的一些设备功能 2.关于报告ID Report ID放在信息包中报表数据之前,设备可以支持多个相同类型的报表,每一个报表包含不同的数据与其特有的ID。 在报表描述符中,Report ID项目作用于其后续所有的项目,直到遇到下一个Report ID为止。如果报表描述符中没有Report ID项目,默认的ID值是0,...
首先你需要做的,是能够单独实现键盘,按下按键,电脑显示对应字符(这一步很简单的,如果你没有实现这个,也不会有组合设备的需求)。然后利用ReportID,把键盘和手柄的hid描述符,放在同一个函数(CUSTOM_HID_ReportDesc_FS)里面。我的hid描述符如下 此时编译上传代码,插入电脑,能成功识别出一个Hid Keyboard Devide和一个...
基于STM32处理器的USB HID模拟鼠标键盘(2) - 实现键盘鼠标功能,由于在报告描述符中使用了两个ReportID,分别是0x01和0x02,前者是键盘的报告描述符的报告ID,后者是鼠标的报告ID,HID的键盘和鼠标发送的数据格式参考文档:http://linfengdu.blog.163.com/blog/static/117
基于STM32的USB HID(Human Interface Device)设备开发可以让开发者创建各种输入设备,如键盘、鼠标、游戏手柄等。使用STM32的USB HID功能,可以通过USB接口将设备连接到计算机,并与计算机进行交互。在本文中,…
id,但我们怎样才能把这个最前的report id号更改为其它任意的,比如report id=0x01.
将STM32的USB初始化为USB从机,使用标准HID协议。控制板自带VBUS供电,因此不需要VBUS、GND引脚。只要...
1、首先打开USB 2、接着把USB设置为下图HID模式 3、选择外部时钟 4、配置时钟树 5、配置USB设置 下面的USB设置就有点讲究了, USBD_CUSTOM_HID_REPORT_DESC_SIZE这个是指报告描述符所用的字节数为34(默认为2);USBD_CUSTOMHID_OUTREPORT_BUF_SIZE表示输入输出端点一次传输数据大小最大为64个字节(默认为2) ...
一、安装完MDK后请打开C:/Keil/ARM/Examples/ST/STM32F10xUSBLib/Demos路径,将Custom_HID在同一个目录下复制一份,如果你要放到其他路径你需要在MDK Options for target的C/C++中添加USB的头文件路径(MDK下的/INC/ST/STM32F10x/USB)。 二、打开usb_desc.c文件,该文件主要包含的端点描述符、设备描述符、配置...
完整的usb_desc.c文件如下: #include "STM32Lib\USBLib\usb_lib.h" #include "usb_desc.h" // KM_DeviceDescriptor const u8 HID_DeviceDescriptor『HID_SIZE_DEVICE_DESC』= { 0X12, // bLength USB_DEVICE_DESCRIPTOR_TYPE, // bDescriptorType 0x00, // bcdUSB 0x02, 0x00, // bDeviceClass 0X...
打开工程文件夹Middlewares/USB_Device_Library下usbd_hid.c文件 6.1 修改接口描述符(可跳过) HID设备的描述符除了5个USB的标准描述符(设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符)外,还包括三个HID设备类特定的描述符:HID描述符、报告描述符(Report)、实体描述符(Physical)。