请选择 进入手机版 | 继续访问电脑版

安富莱电子论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 1558|回复: 29
收起左侧

[专题教程] 【专题教程第8期】基于emWin模拟器的USB BULK上位机开发,仅需C即可,简单易实现

  [复制链接]

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
发表于 2018-11-1 02:28:05 | 显示全部楼层 |阅读模式
说明:
1、如果你会emWin话的,就可以轻松制作上位机。做些通信和控制类上位机,比使用C#之类的方便程度一点不差,而且你仅会C语言就可以。
2、并且成功将emWin人性化,可以做些Windows系统上的小应用了,基本完全看不出是emWin做的,而且生成的软件很小。Win32 API编写的软件,最大的好处就是微软的各个系统版本都兼容,而且发布时软件比较小,仅仅一个exe小软件。
3、无需用户自己编写USB BULK驱动程序,详情见教程中1.4小节说明即可。同时,上位机设计中需要用到的各种文档、软件、驱动等,都在教程中都给出了下载地址。
4、教程中将USB BULK上位机和下位机设计中涉及到细节问题,全部毫无保留的进行了说明,可以防止大家少走很多弯路。
5、早期发布的网络摄像头之TCP上位机软件实现也是基于emWin模拟器的,详情见帖子:链接

注意事项:
1、如果想直接测试上位机的效果,务必优先看教程1.4 小节如何安装驱动。
2、关闭上位机软件的时候,右击页面退出,右上角的X号未做响应处理。
3、上位机是用的VC6.0实现的,测试上位机时,只有打开 USB 连接成功了才可以正常操作其它几个按钮。
4、配套的下位机是基于RTX及其USB中间件实现的,推荐使用 MDK4.74 进行编译。当然,使用最新版的 MDK5.2X 也是没问题的,
     在Options -> C/C++ -> Misc Controls选项里面添加--diag_suppress 3731即可。


上位机例程
上位机正式版.rar (5.22 MB, 下载次数: 979)

评分

参与人数 1金币 +20 收起 理由
byccc + 20 很给力!

查看全部评分

淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
 楼主| 发表于 2018-11-5 01:45:04 | 显示全部楼层
这里补充个知识点,驱动安装是采用的先安装RL-USB的驱动,然后用Zadig安装libusb驱动替换。实际上可以省去RL-USB的驱动安装,直接使用Zadig安装即可,详情可以看发布的教程。之所以这么做是因为RL-USB提供了数字签名。
QQ截图20181105014440.png
2.png
3.png

安装成功后
QQ截图20181105014614.png

淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

3

主题

12

帖子

18

积分

新手上路

积分
18
发表于 2018-11-1 07:24:05 | 显示全部楼层
谢谢硬汉哥给力分享
回复

使用道具 举报

1

主题

364

帖子

366

积分

高级会员

积分
366
发表于 2018-11-1 07:58:07 | 显示全部楼层
一直以来都有点怕做USB接口开发,很怕去啃这么复杂枯燥的东西!
真是佩服版主大大,能潜心坚持钻研一期又一期的专题…
受益匪浅…
回复

使用道具 举报

0

主题

3

帖子

3

积分

新手上路

积分
3
发表于 2018-11-1 08:06:21 | 显示全部楼层
本帖最后由 boarmy 于 2018-11-1 08:08 编辑

给力!绝对好资料!这里提个问题,关于“基于emWin模拟器的USB BULK上位机开发,仅需C即可,简单易实现.pdf”文档中提到的的资料的链接地址,能否给出下,在PDF文档中,链接地址失效了,如下图这样的:

C:\Users\Administrator\Desktop\1.png
1.png
回复

使用道具 举报

1

主题

23

帖子

25

积分

新手上路

积分
25
发表于 2018-11-1 08:34:03 | 显示全部楼层
厉害了,值得好好学习一下
回复

使用道具 举报

3

主题

14

帖子

20

积分

新手上路

积分
20
发表于 2018-11-1 08:42:23 | 显示全部楼层
赶紧收藏了,硬汉出的都是精品啊
回复

使用道具 举报

2

主题

42

帖子

46

积分

新手上路

积分
46
发表于 2018-11-1 08:43:10 | 显示全部楼层
汉哥,你老要保住龙体
回复

使用道具 举报

1

主题

47

帖子

49

积分

初级会员

积分
49
发表于 2018-11-1 09:17:34 | 显示全部楼层
如果还不熟悉 emWin 模拟器的使用方法,可以学习我们新版 emWin 教程的第 8 章:地址(这是一
个超链接)
教程第二页 这链接怎么下载哈
回复

使用道具 举报

1

主题

47

帖子

49

积分

初级会员

积分
49
发表于 2018-11-1 09:22:10 | 显示全部楼层
硬汉 我想学习用emwin开发串口上位机 这个有相关的教程或资料吗?
回复

使用道具 举报

0

主题

1

帖子

1

积分

新手上路

积分
1
发表于 2018-11-1 09:34:37 | 显示全部楼层
非常实用的教程,佩服楼主对技术的钻研,深表敬意。
回复

使用道具 举报

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
 楼主| 发表于 2018-11-1 09:36:27 | 显示全部楼层
boarmy 发表于 2018-11-1 08:06
给力!绝对好资料!这里提个问题,关于“基于emWin模拟器的USB BULK上位机开发,仅需C即可,简单易实现.pdf ...

鼠标箭头放在 蓝色字体的位置,会有一个小手出现,点击即可,估计是你PDF阅读器的问题,看我这里
QQ截图20181101093402.png
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
 楼主| 发表于 2018-11-1 09:37:42 | 显示全部楼层
aloevera 发表于 2018-11-1 09:17
如果还不熟悉 emWin 模拟器的使用方法,可以学习我们新版 emWin 教程的第 8 章:地址(这是一
个超链接)
...

鼠标箭头放在 蓝色字体的位置,会有一个小手出现,点击即可,估计是你PDF阅读器的问题,看我这里
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
 楼主| 发表于 2018-11-1 09:38:40 | 显示全部楼层
aloevera 发表于 2018-11-1 09:22
硬汉 我想学习用emwin开发串口上位机 这个有相关的教程或资料吗?

坛友的分享。
http://forum.armfly.com/forum.php?mod=viewthread&tid=31100
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

18

主题

862

帖子

898

积分

金牌会员

好好学习 天天向上

积分
898
发表于 2018-11-1 10:25:47 | 显示全部楼层
666
专注Qt和Linux
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

1

主题

47

帖子

49

积分

初级会员

积分
49
发表于 2018-11-1 11:22:09 | 显示全部楼层
eric2013 发表于 2018-11-1 09:37
鼠标箭头放在 蓝色字体的位置,会有一个小手出现,点击即可,估计是你PDF阅读器的问题,看我这里

用的福鑫pdf 应该没问题啊
都是论坛链接吗? 那能麻烦给出一下吗?
回复

使用道具 举报

4958

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
40303
QQ
 楼主| 发表于 2018-11-1 11:26:37 | 显示全部楼层
aloevera 发表于 2018-11-1 11:22
用的福鑫pdf 应该没问题啊
都是论坛链接吗? 那能麻烦给出一下吗?

我也是福昕,你从官网下载个试试。这个是硬伤,得根本解决了才好啊,以后遇到了,还是坑
QQ截图20181101112523.png


淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

0

主题

1

帖子

1

积分

新手上路

积分
1
发表于 2018-11-1 11:38:05 | 显示全部楼层
哇,大佬厉害啊,支持支持!!
回复

使用道具 举报

1

主题

11

帖子

13

积分

新手上路

积分
13
发表于 2018-11-1 11:50:55 | 显示全部楼层
11月1号还热乎的,顶,好东西一定要顶。
回复

使用道具 举报

5

主题

41

帖子

51

积分

初级会员

积分
51
发表于 2018-11-1 12:01:28 | 显示全部楼层
佩服硬汉                     
回复

使用道具 举报

0

主题

4

帖子

4

积分

新手上路

积分
4
发表于 2018-11-1 12:47:55 | 显示全部楼层
给力给力      
回复

使用道具 举报

4

主题

42

帖子

50

积分

初级会员

积分
50
发表于 2018-11-1 13:26:38 | 显示全部楼层
硬汉哥功德无量
回复

使用道具 举报

1

主题

16

帖子

18

积分

新手上路

积分
18
发表于 2018-11-4 15:24:17 | 显示全部楼层
我查看了下代码,这是基于大容量设备类进行开发的,这样插入电脑是不是会显示类型U盘的图样呢?代码要是基于HID类的批量传输就好了,不过还是很有参考价值。
回复

使用道具 举报

18

主题

862

帖子

898

积分

金牌会员

好好学习 天天向上

积分
898
发表于 2018-11-4 15:26:21 | 显示全部楼层
leven 发表于 2018-11-4 15:24
我查看了下代码,这是基于大容量设备类进行开发的,这样插入电脑是不是会显示类型U盘的图样呢?代码要是基 ...

这个不是基于MSC,MSC是免驱的。
专注Qt和Linux
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

1

主题

16

帖子

18

积分

新手上路

积分
18
发表于 2018-11-4 15:36:48 | 显示全部楼层
本帖最后由 leven 于 2018-11-4 15:53 编辑
byccc 发表于 2018-11-4 15:26
这个不是基于MSC,MSC是免驱的。

代码中的配置描述符是0x08,是属于大容量设备类。至于你说的驱动,会不会只是因为上位机是使用emwin模拟的缘故。而且不是直连,是使用CH340转了一下,搞不明白,为什么要用CH340。
我这里是有一个基于HID设备类的设备机(STM32直连USB,没CH340),采用批量传输或者中断传输,上位机采用C#编写。本想参考一下。哈哈哈哈哈
回复

使用道具 举报

18

主题

862

帖子

898

积分

金牌会员

好好学习 天天向上

积分
898
发表于 2018-11-4 15:52:17 | 显示全部楼层
leven 发表于 2018-11-4 15:36
代码中的配置描述符是0x08,是属于大容量设备类。至于你说的驱动,是指emwin中的驱动吗?

QQ截图20181104155304.png

QQ截图20181104155120.png

专注Qt和Linux
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

18

主题

862

帖子

898

积分

金牌会员

好好学习 天天向上

积分
898
发表于 2018-11-4 16:01:34 | 显示全部楼层
leven 发表于 2018-11-4 15:24
我查看了下代码,这是基于大容量设备类进行开发的,这样插入电脑是不是会显示类型U盘的图样呢?代码要是基 ...

你不懂USB啊,老铁,HID那来的的批量传输。HID是控制传输。2.0全速理论值是64KB,实际速度也有30KB左右。

这个例子是CDC-ACM修改来的。
专注Qt和Linux
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

18

主题

862

帖子

898

积分

金牌会员

好好学习 天天向上

积分
898
发表于 2018-11-4 16:03:38 | 显示全部楼层
leven 发表于 2018-11-4 15:36
代码中的配置描述符是0x08,是属于大容量设备类。至于你说的驱动,会不会只是因为上位机是使用emwin模拟 ...

跟CH340有什么关系,你没看懂代码呀

算了,自己捋捋吧。
专注Qt和Linux
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

1

主题

16

帖子

18

积分

新手上路

积分
18
发表于 2018-11-4 16:17:35 | 显示全部楼层
byccc 发表于 2018-11-4 16:03
跟CH340有什么关系,你没看懂代码呀

算了,自己捋捋吧。

嗯,都晕了。
回复

使用道具 举报

0

主题

2

帖子

2

积分

新手上路

积分
2
发表于 2018-11-6 14:15:08 | 显示全部楼层
谢谢分享
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|安富莱电子论坛 ( 鄂ICP备09023347号,公安机关备案号42010602000201 )

GMT+8, 2018-11-19 15:15 , Processed in 0.269859 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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