[STM32F1] 自定义HID设备

[复制链接]
612|10
 楼主| 我的牙白 发表于 2025-7-2 23:20 | 显示全部楼层 |阅读模式
我在STM32F103上使用CUBEIDE的Custom HID设备。通过这种方式与PC之间简单的传输20字节数据包,工作正常。
但如何在Windows上与自定义设备进行交互?该设备不需要任何特定驱动程序。
我想用Python和Java与之交互。有没有相关的指导教程?
第二个问题是如何在发送数据之前识别我的设备是否物理连接。
是否可以使用字符串描述符在PC应用程序中识别它?

磨砂 发表于 2025-8-1 11:21 | 显示全部楼层
通过设备的VID和PID枚举所有符合要求的HID设备
晓伍 发表于 2025-8-1 13:43 | 显示全部楼层
GUID HidGuid; // HID类的全局唯一标识符
HidD_GetHidGuid(&HidGuid); // 获取HID设备的GUID
HDEVINFO hDevInfoSet = SetupDiGetClassDevs(&HidGuid, NULL, NULL, DIGCF_DEVICEINTERFACE | DIGCF_PRESENT);


八层楼 发表于 2025-8-1 16:11 | 显示全部楼层
使用[size=0.875]CreateFile()获取设备的读写句柄,指定访问模式为通用读写
观海 发表于 2025-8-1 18:31 | 显示全部楼层
注册设备通知机制,监听设备的动态连接状态变化
guanjiaer 发表于 2025-8-1 20:50 | 显示全部楼层
下载预编译的HIDAPI二进制文件,将其添加到项目中作为依赖项。该库封装了跨平台的低层细节,提供统一的接口
heimaojingzhang 发表于 2025-8-2 07:37 | 显示全部楼层
通过XML配置文件定义菜单布局及关联的动作回调
keaibukelian 发表于 2025-8-2 09:57 | 显示全部楼层
禁用自动运行外部程序、强制启用加密传输等安全策略
paotangsan 发表于 2025-8-2 12:15 | 显示全部楼层
添加重试逻辑应对临时通信中断,例如在[size=0.875]WriteFile返回错误时实施指数退避算法重新尝试连接
renzheshengui 发表于 2025-8-2 14:30 | 显示全部楼层
持续双向传输时的稳定速率是否达到理论最大值的80%以上
wowu 发表于 2025-8-2 16:53 | 显示全部楼层
使用HIDAPI库是兼顾效率与可维护性的最优选择
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

54

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部