OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 22164|回复: 31

【已开源】分享一个HID数据收发调试工具

[复制链接]

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
发表于 2017-10-28 19:45:20 | 显示全部楼层 |阅读模式
本帖最后由 jiayu 于 2022-5-18 11:37 编辑

20220518更新
该工具已经开源在gitee
地址: https://gitee.com/cortexmi/hidtool




最近在研究STM32的HID,太难了。。。。。

为了调试,花了一整天时间写了个上位机软件,语言是C#,打开可能需要安装 .net framework 4.0 以上版本(win7及以上已经支持)


用法也相当简单:
1、点击 连接 按钮

1.jpg


2、在下面选择要连接的设备,双击或点 连接
2.jpg


3、连接 成功 后,会自动回到这里,然后点击发送,就可以发送发送框的数据了~~~
PS:支持大于64字节发送,但是发送器件无法接收数据。我连接的是单片机,单片机会把接收的发回来,所以接收框也有同样的数据,,,话说HID怎么收发小于64字节?还不会啊

3.jpg


串口有  “串口工具”,,,HID怎么能没个工具呢,,是吧
希望能对大家有用,网盘链接:https://pan.baidu.com/s/1i5QVmrN 提取密码:vsjg
还有一个工具叫做:PortHelper也可以调试HID,应该更加成熟


2017-11-1更新V1.1
主界面发送框清空,连接后才自动填充数据;
发送框没有数据提示;
HID选择界面增加“刷新”按钮、限制 最小尺寸、VID和PID全大写;
缩小启动时候主界面大小。


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

24

主题

695

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1665
金钱
1665
注册时间
2016-4-29
在线时间
266 小时
发表于 2017-10-28 20:29:20 | 显示全部楼层
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 08:58:59 | 显示全部楼层
楼主牛逼,也有HID的冲动,还没开始,最近忙于其他事情
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 08:59:30 | 显示全部楼层

沙发被你抢了
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 09:00:42 | 显示全部楼层
C#子父窗口怎么弄,有没相关教程,最近没空查资料
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2017-10-30 11:33:01 | 显示全部楼层
八度空间 发表于 2017-10-30 09:00
C#子父窗口怎么弄,有没相关教程,最近没空查资料

子窗口是可以直接添加窗体的 QQ截图20171030113200.jpg

回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 12:33:40 | 显示全部楼层
jiayu 发表于 2017-10-30 11:33
子窗口是可以直接添加窗体的

弄个代码参考一下,没弄明白子窗口怎么初始化
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2017-10-30 17:57:53 | 显示全部楼层
八度空间 发表于 2017-10-30 12:33
弄个代码参考一下,没弄明白子窗口怎么初始化

mainForm.zip (52.4 KB, 下载次数: 338)
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 20:51:34 | 显示全部楼层
jiayu 发表于 2017-10-30 17:57
这个是最简单的子窗口启动工程

我试试,最近也要做一个HID的东西,前期使用串口来做
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2017-10-30 21:01:54 来自手机 | 显示全部楼层
八度空间 发表于 2017-10-30 20:51
我试试,最近也要做一个HID的东西,前期使用串口来做

HID效率挺低的,只能不低于1ms发一次,一次只能64B,有时候还不如串口好用哈哈哈
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2017-10-30 23:02:54 | 显示全部楼层
jiayu 发表于 2017-10-30 21:01
HID效率挺低的,只能不低于1ms发一次,一次只能64B,有时候还不如串口好用哈哈哈

不知道怎么扩展数据宽度
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

4

主题

346

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3657
金钱
3657
注册时间
2016-2-21
在线时间
542 小时
发表于 2017-10-31 10:37:02 | 显示全部楼层
不错,HID挺有兴趣的
回复 支持 反对

使用道具 举报

2

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
70
金钱
70
注册时间
2018-2-20
在线时间
33 小时
发表于 2018-4-13 10:08:24 | 显示全部楼层
楼主你C#搞HID是调用WINDOWS API还是用了静态库
回复 支持 反对

使用道具 举报

93

主题

746

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1849
金钱
1849
注册时间
2012-9-16
在线时间
286 小时
发表于 2018-4-13 10:57:07 | 显示全部楼层
不错,学习学习
纵浪大化中,不喜亦不惧;应尽便须尽,无复独多虑!
回复 支持 反对

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7462
金钱
7462
注册时间
2015-1-15
在线时间
1367 小时
发表于 2018-4-22 17:35:30 | 显示全部楼层
楼主1.3.0版本运行提示接收错误
一分耕耘一分收获。
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2018-5-9 16:52:11 | 显示全部楼层
dkkjkkka 发表于 2018-4-13 10:08
楼主你C#搞HID是调用WINDOWS API还是用了静态库

调用的是静态库
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2018-5-9 16:52:28 | 显示全部楼层
yklstudent 发表于 2018-4-22 17:35
楼主1.3.0版本运行提示接收错误

什么情况下出现的
回复 支持 反对

使用道具 举报

105

主题

522

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1386
金钱
1386
注册时间
2012-10-23
在线时间
97 小时
发表于 2018-7-9 21:58:46 | 显示全部楼层
不能选择输入输出的端点吗
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2019-2-10 15:32:47 来自手机 | 显示全部楼层
miaoguoqiang 发表于 2018-7-9 21:58
不能选择输入输出的端点吗

以后的版本加入此功能
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-1-28
在线时间
4 小时
发表于 2019-2-11 12:40:29 | 显示全部楼层
全速的HID设备最多只能达到64K字节每秒,如果要更快,只有做成Bulk设备,可以达到1M字节每秒
一般情况下Bulk设备需要驱动,但是在Win8之后也可以像HID设备那样不用驱动

详细说明在这里有
http://blog.xtoolbox.org/custom_usb_device_without_driver
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2019-1-28
在线时间
4 小时
发表于 2019-2-11 12:43:58 | 显示全部楼层
miaoguoqiang 发表于 2018-7-9 21:58
不能选择输入输出的端点吗

HID设备不能选择端点,只能通过Report ID来区分

做成自定义设备后,可以用端点来区分

www.tusb.org 这里有可以选择输入输出端点的测试工具,支持自定义设备
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2019-2-18 16:15:39 | 显示全部楼层
xtoolbox 发表于 2019-2-11 12:43
HID设备不能选择端点,只能通过Report ID来区分

做成自定义设备后,可以用端点来区分

早知道有这个软件我就不费劲了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-7-10
在线时间
3 小时
发表于 2020-3-3 14:27:47 | 显示全部楼层
楼主,源码是否能分享给我学习一下,我以前用MFC的,MFC写的HID上位机,我把它封装成动态库,在C#里面使用,出现了很多BUG,所以就想,能不能参考一下您的源码,因为对C#也不太熟悉,所以能不能参考一下您的源码。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2015-1-19
在线时间
28 小时
发表于 2020-8-31 10:42:58 | 显示全部楼层
这几天调试hid就用的这个工具,原来是楼主你做的啊
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2020-9-3 21:49:58 | 显示全部楼层
xcall 发表于 2020-8-31 10:42
这几天调试hid就用的这个工具,原来是楼主你做的啊

万分荣幸
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2014-4-16
在线时间
0 小时
发表于 2021-11-21 16:55:11 | 显示全部楼层
请问我用STM32写的HID自定义设备用这个小工具V1.3.4 提示“设备连接失败!此设备无法连接”是怎么回事哈?
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
发表于 2022-3-19 09:41:23 | 显示全部楼层
我用这个工具找不到我的hid设备,为啥呢?
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2020-11-12
在线时间
2 小时
发表于 2022-3-25 10:51:20 | 显示全部楼层
请问楼主吗,我这可以查到我的HID设备,但是显示连接失败,此设备无法连接是怎么回事呢
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2020-11-12
在线时间
2 小时
发表于 2022-3-25 10:53:29 | 显示全部楼层
灰泥鳅 发表于 2021-11-21 16:55
请问我用STM32写的HID自定义设备用这个小工具V1.3.4 提示“设备连接失败!此设备无法连接”是怎么回事哈?
...

我也遇到同样问题,求解
回复 支持 反对

使用道具 举报

160

主题

967

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2097
金钱
2097
注册时间
2014-3-7
在线时间
491 小时
发表于 2022-4-27 13:54:44 | 显示全部楼层
https://www.amobbs.com/forum.php ... 0&highlight=HID
又找到了一个demo,但是没会员
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2019-5-31
在线时间
20 小时
发表于 2022-5-17 15:20:20 | 显示全部楼层
KGLZ 发表于 2022-3-25 10:53
我也遇到同样问题,求解

楼主解决了嘛,我也有这样的问题
回复 支持 反对

使用道具 举报

3

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
564
金钱
564
注册时间
2016-3-31
在线时间
139 小时
 楼主| 发表于 2022-5-18 11:37:23 | 显示全部楼层
该工具已经开源在gitee
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 04:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表