硬汉嵌入式论坛

 找回密码
 立即注册
查看: 11204|回复: 31
收起左侧

USB应用实战视频教程第4期:手把手玩转基于QT6.4的USB BULK上位机和下位机开发下篇(2022-11-07)

  [复制链接]

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
发表于 2022-11-7 01:28:38 | 显示全部楼层 |阅读模式
本期视频教程为大家展示基于QT6.4的USB BULK上位机开发视频教程,上期视频教程分享了下位机开发。

首次制作QT6.4的USB上位机,踩了好多坑,在视频里面都给大家做了分享。

视频:

https://www.bilibili.com/video/BV1nt4y1K7oZ/







本次设计的QT6.4上位机没有做炫酷效果修改,把主要功能做了个实现

image.png

image.png

动图:




参考资料:
1、QT6.4上位机和板子下位机例子下载,方便大家对比。
链接:https://pan.baidu.com/s/1TCcYaoMzLN5FLAOLDXXumg 提取码:ra2b

2、QT6.4下载安装说明:
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=116394

3、USB教程资料参考
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=99710

4、之前做的emWin模拟器
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=108860

5、Zadig:USB驱动安装工具,此工具让libusb-win32,WinUSB,libusbK的驱动安装超级简
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=15108
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2022-11-7 01:50:44 | 显示全部楼层
例子是个绝对路径,白天修改个相对路径版

image.png
回复

使用道具 举报

7

主题

25

回帖

46

积分

新手上路

积分
46
发表于 2022-11-7 07:39:51 | 显示全部楼层
支持硬汉哥,等这个第四期好多天了。前些天用qt做了个小工具,不过下位机是USB转串口的,这几天学习下换成usb通讯的。
回复

使用道具 举报

107

主题

594

回帖

930

积分

金牌会员

积分
930
QQ
发表于 2022-11-7 07:58:23 | 显示全部楼层
硬汉哥厉害。下班后,跟着硬汉哥玩起来。试着看看QT咋弄。
回复

使用道具 举报

4

主题

63

回帖

75

积分

初级会员

积分
75
发表于 2022-11-7 11:17:32 | 显示全部楼层
有没有STM32H7的配套例程啊
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2022-11-7 11:53:06 | 显示全部楼层
小麦吉 发表于 2022-11-7 11:17
有没有STM32H7的配套例程啊

看第3期视频教程生成对应的工程即可。
回复

使用道具 举报

7

主题

25

回帖

46

积分

新手上路

积分
46
发表于 2022-11-8 01:01:42 | 显示全部楼层
感谢硬汉哥的教程。今晚自己来了一遍,终于把上位机的USB通讯了结了。目前只是初级应用,还得再深入研究一下。
我的demo也给感兴趣的朋友参考下,用的vs-studio环境开发的,代码内容和硬汉哥的一样。
另外,硬汉哥:vs-studio里加lib文件,直接加就行,没什么花里胡哨的注意点。(本来我先看视频,感觉我在vs里可能要折腾一下的)。
2022-11-08_005434.gif

myDemo.rar

1.32 MB, 下载次数: 103

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2022-11-8 01:05:37 | 显示全部楼层
tanjing2017 发表于 2022-11-8 01:01
感谢硬汉哥的教程。今晚自己来了一遍,终于把上位机的USB通讯了结了。目前只是初级应用,还得再深入研 ...

这就是C开发方便的地方,万能,换个IDE,继续刷。
回复

使用道具 举报

0

主题

13

回帖

13

积分

新手上路

积分
13
发表于 2022-11-11 21:40:55 | 显示全部楼层
直接拷整个QT项目过去,用QT create 打开项目编译不成功,要重新再添加一次libUSB
库才行。
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2022-12-8 17:16:55 | 显示全部楼层
大佬,这个libusb的库是怎么生成的呀,是用哪个源码编译出来的呀?我没装VS2019,然后貌似用不了这个库了
用mingw提示这个错误
  error: No rule to make target 'E:/work/usb_test/116396/USB QT/USB/./liblibusb.a', needed by 'debug/USB.exe'.  Stop.
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2022-12-8 18:10:29 | 显示全部楼层
yuanfj 发表于 2022-12-8 17:16
大佬,这个libusb的库是怎么生成的呀,是用哪个源码编译出来的呀?我没装VS2019,然后貌似用不了这个库了
...

libusb-win32的1.2.6版本下载
https://forum.anfulai.cn/forum.p ... 4591&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2022-12-8 20:44:48 | 显示全部楼层
用mingw编译下这个libusb,然后QT 引用新库就能编译过啦
回复

使用道具 举报

0

主题

19

回帖

19

积分

新手上路

码农

积分
19
发表于 2023-1-20 15:07:27 | 显示全部楼层
学习学习,感谢分享
回复

使用道具 举报

0

主题

19

回帖

19

积分

新手上路

码农

积分
19
发表于 2023-2-4 20:58:27 | 显示全部楼层
学习学习,感谢分享
回复

使用道具 举报

1

主题

5

回帖

8

积分

新手上路

积分
8
发表于 2023-2-12 14:31:25 | 显示全部楼层
感谢硬汉哥的分享,学习学习!
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2024-6-5 12:52:42 | 显示全部楼层
yuanfj 发表于 2022-12-8 17:16
大佬,这个libusb的库是怎么生成的呀,是用哪个源码编译出来的呀?我没装VS2019,然后貌似用不了这个库了
...

哥,我也遇到这个问题,弄了好久,没弄好,请教一下具体是怎么操作那个源码编译呢
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2024-6-6 09:13:24 | 显示全部楼层
XYZ_XYZ 发表于 2024-6-5 12:52
哥,我也遇到这个问题,弄了好久,没弄好,请教一下具体是怎么操作那个源码编译呢

直接用lib文件,不要重新编译源码

https://forum.anfulai.cn/forum.p ... 4591&fromuid=58
回复

使用道具 举报

270

主题

605

回帖

1415

积分

至尊会员

积分
1415
发表于 2024-10-25 10:03:46 | 显示全部楼层
大佬,我的怎么找不到usb设备啊。运行提示 VID/PID找不到,调试看了下bus->device=0了

12345.png
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2024-10-25 12:44:11 | 显示全部楼层
jplzl10000 发表于 2024-10-25 10:03
大佬,我的怎么找不到usb设备啊。运行提示 VID/PID找不到,调试看了下bus->device=0了

你的设备管理器里面USB设备正常识别了吧
回复

使用道具 举报

270

主题

605

回帖

1415

积分

至尊会员

积分
1415
发表于 2024-10-25 13:16:19 | 显示全部楼层
eric2013 发表于 2024-10-25 12:44
你的设备管理器里面USB设备正常识别了吧

现在有了,为什么识别出来下面这种。原来有问题应该是没有用libusb替换掉winusb了。现在就是用这个Qt工程可以识别。用stm32cubeprogrammer软件就无法识别了。应该是替换掉了winusb的驱动导致的?


下载 (1).png

下载.png
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2024-10-26 09:42:52 | 显示全部楼层
jplzl10000 发表于 2024-10-25 13:16
现在有了,为什么识别出来下面这种。原来有问题应该是没有用libusb替换掉winusb了。现在就是用这个Qt工程 ...

你的这个用的是ST的USB库吗,还是说你用的RL-USB库,但是PID和VID设置的是ST的。

如果你是RL-USB,识别出来的应该是KEIL的PID和vid
回复

使用道具 举报

270

主题

605

回帖

1415

积分

至尊会员

积分
1415
发表于 2024-10-26 10:20:27 | 显示全部楼层
eric2013 发表于 2024-10-26 09:42
你的这个用的是ST的USB库吗,还是说你用的RL-USB库,但是PID和VID设置的是ST的。

如果你是RL-USB,识 ...

就是用的现成的nucleo开发板做的测试了。开始没有用zadig替换成libusb驱动的话就是找不到设备了。
用libusb替换后就能找到。但显示的就是个 atmel的设备了
回复

使用道具 举报

270

主题

605

回帖

1415

积分

至尊会员

积分
1415
发表于 2024-10-26 10:24:10 | 显示全部楼层
eric2013 发表于 2024-10-26 09:42
你的这个用的是ST的USB库吗,还是说你用的RL-USB库,但是PID和VID设置的是ST的。

如果你是RL-USB,识 ...

主要是现在想要做个烧录器的上位机。还在摸索用什么平台和语言来开发呢。Python/MFC/Qt都试了试。感觉python的usb通信开发起来方便点,但python语言完全不熟悉了。MFC网上好像都找不到usb开发的教程之类的
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2024-10-29 09:59:21 | 显示全部楼层
jplzl10000 发表于 2024-10-26 10:24
主要是现在想要做个烧录器的上位机。还在摸索用什么平台和语言来开发呢。Python/MFC/Qt都试了试。感觉pyt ...

python确实最方便。几乎不用操心语法问题。
回复

使用道具 举报

0

主题

1

回帖

1

积分

新手上路

积分
1
发表于 2025-10-14 16:15:02 | 显示全部楼层
找不到libusb0.dll无法运行代码
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2025-10-15 11:43:09 | 显示全部楼层
xiaoweya 发表于 2025-10-14 16:15
找不到libusb0.dll无法运行代码

Zadig安装驱动
回复

使用道具 举报

0

主题

84

回帖

84

积分

初级会员

积分
84
发表于 2025-11-7 11:23:45 | 显示全部楼层
eric2013 发表于 2024-10-26 09:42
你的这个用的是ST的USB库吗,还是说你用的RL-USB库,但是PID和VID设置的是ST的。

如果你是RL-USB,识 ...

硬汉哥,我使用的是RTX的USB组件,ST的例程,里面的Vendor ID和product id,这个有没有不需要安装驱动直接使用的vendor id和product id啊
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2025-11-7 11:25:19 | 显示全部楼层
yelu 发表于 2025-11-7 11:23
硬汉哥,我使用的是RTX的USB组件,ST的例程,里面的Vendor ID和product id,这个有没有不需要安装驱动直 ...

使用高速HID,速度有24MB字节/s
回复

使用道具 举报

0

主题

84

回帖

84

积分

初级会员

积分
84
发表于 2025-11-7 11:45:21 | 显示全部楼层
eric2013 发表于 2025-11-7 11:25
使用高速HID,速度有24MB字节/s

啥意思,我目前是使用usb cdc acm,官方例程提供了一个.inf和.cat文件,我想问一下有免驱的吗
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2025-11-7 11:52:54 | 显示全部楼层
yelu 发表于 2025-11-7 11:45
啥意思,我目前是使用usb cdc acm,官方例程提供了一个.inf和.cat文件,我想问一下有免驱的吗

HID免驱不需要驱动。

CDC的话,厂商需要申请微软WHQL认证,将设备的VID/PID添加到微软驱动的兼容列表中,然后微软系统集成你这个驱动
回复

使用道具 举报

0

主题

84

回帖

84

积分

初级会员

积分
84
发表于 2025-11-7 12:25:16 | 显示全部楼层
eric2013 发表于 2025-11-7 11:52
HID免驱不需要驱动。

CDC的话,厂商需要申请微软WHQL认证,将设备的VID/PID添加到微软驱动的兼容列表 ...

硬汉哥,我有两个问题:
1、For production, use ST's official PID 0x5740 with VID 0x0483.这个ID是免费使用且不需要安装驱动的吗?
2、如果使用HID来通讯,上位机怎么选择设备啊,使用CDC通过com口选择,HID暂时没用过
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
119430
QQ
 楼主| 发表于 2025-11-8 10:19:18 | 显示全部楼层
yelu 发表于 2025-11-7 12:25
硬汉哥,我有两个问题:
1、For production, use ST's official PID 0x5740 with VID 0x0483.这个ID是免 ...

1、USB PID只能花钱买
2、通过PID VID区分
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-11-22 02:22 , Processed in 0.065838 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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