切换到宽版
  • 16789阅读
  • 22回复

[STM]教程贴-基于STM32 USB免驱与上位机通讯,STM32 USB HID 易语言 [复制链接]

上一主题 下一主题
离线我是鑫鑫
 

发帖
265
M币
1204
专家
5
粉丝
101
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2017-09-30

我想大多学stm32 USB的都是介于无法与上位机通讯,在此发表一篇教程。
学习STM32USB通讯的时候发现资料是真的不多,特别是USBPC端的驱动资料实在是太少了,鸟语不好Google看不太懂,自己慢慢摸索吧。
在论坛找到一个libusb的开源库可以不用写驱动直接用官方软件生成驱动,用控制台通讯成功后发现做UI那才叫一个痛苦,各种调用GDIPlus搞我是稀里糊涂的
后来看了一下LabVIEW一个驱动200多兆,强迫症受不了,直接没学。
无意间看见了用中文编程的语言易语言 ,但是那叫一个开心啊,还用这么好用的东西,试用了一下发现用法和C sharp差不多,直接开干,结合网络资源先用HID直接通讯,参考资料http://www.viewtool.com/bbs/forum.php?mod=viewthread&tid=199 ,最后移植到易语言里面,自己写了一个易模块调用C++的kernel32库直接和USB通讯,里面就四个函数,使用简单,方便,不懂的建议先看一下易语言的基本语法,基本上一两个小时就可以学会易语言。附件有上位机源码和下位机源码。

1,新建一个易语言窗口程序


2.在窗口上添加一个按钮控件和编辑框控件

3.加入代码,附加中有代码,上位机和下位机代码都详细注释了


运行效果,点击按钮,先从主机发送一段数据,下位机返回的是数据会显示在编辑框里面


做过测试最快速度可以一秒500包左右,500*64/1024差不多30Kb每秒

网盘链接:http://pan.baidu.com/s/1eS9y8JS 密码:nwd9
我的网盘喜欢清理,有时候会清理掉,留论坛一份



本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
在线wc5095928

发帖
15155
M币
3
专家
11
粉丝
1214
只看该作者 1楼 发表于: 2017-09-30
用过易语言 确实容易学
但是易语言中文代码太占地方 结果就是 易读性太差
再说 C语言就那几个关键字 没必要中文化
“我们极容易变成奴隶,变成之后,还万分喜欢。”
                ——鲁迅
离线digifix

发帖
14728
M币
52
专家
6
粉丝
138
只看该作者 2楼 发表于: 2017-09-30
看见所谓易语言,立刻,闪
在线飞向狙沙

发帖
12981
M币
7282
专家
47
粉丝
10348
只看该作者 3楼 发表于: 2017-09-30
回 wc5095928 的帖子
wc5095928:用过易语言 确实容易学
但是易语言中文代码太占地方 结果就是 易读性太差
再说 C语言就那几个关键字 没必要中文化[表情] [表情]  (2017-09-30 13:51) 回 wc5095928 的帖子

用过易安卓,搞起来比较简单,不像eclipse太费劲,但是中文开发太蛋疼了,用中文的文字,加英文的语法,明明if else就行了,易安卓开发的时候我得先脑补if else,然后再转成如果 否则,遇上switch case还不知道用中文咋表示,还得查资料。。。
本帖最近打赏记录:共1条打赏M币+1
在线wc5095928

发帖
15155
M币
3
专家
11
粉丝
1214
只看该作者 4楼 发表于: 2017-09-30
确实 两个字母换成中文反而麻烦了 微软VSS的C#和VB都能开发安卓程序
离线zhuls

发帖
1557
M币
3776
专家
3
粉丝
27
只看该作者 5楼 发表于: 2017-09-30
楼上所言甚是!易语言也就在学校或业余的DIY用用,要是大公司也这么用,会累死码农的,后来者看代码也是一头雾水。说是中文,其实还是E文,经常编译时报错,都是全角半角的占位问题。。没喝就醉了我。。。
在线chenlei1910

发帖
11026
M币
1679
专家
2
粉丝
39
只看该作者 6楼 发表于: 2017-09-30
挺不错,做做小的应用还是不错的,之前用易语言做过串口不过不好用,hid速度还是慢了点
离线杨雪飞

发帖
5871
M币
1359
专家
25
粉丝
211
只看该作者 7楼 发表于: 2017-09-30
回 wc5095928 的帖子
wc5095928:确实 两个字母换成中文反而麻烦了 微软VSS的C#和VB都能开发安卓程序 (2017-09-30 14:22) 回 wc5095928 的帖子

会者不难,易语言的好处就是百度“易语言 + 关键词”就可以找到代码,移植比较方便,对于不会编程的人来说小改一下别人的代码也是很简单的事,因为可以大概找到相关功能的位置,比如说看某个按钮按下之后干什么,直接就可以找到,但是,同样拿到C那些语言的那就直接懵逼了。反过来,你现在会那些语言,来看易语言真是不屑一顾。

国内某破解论坛,一群大牛在里边,一会反汇一会调试的,结果这群货写小工具的时候差不多都是用的易。像我这样的半个五百都可以用易语言写个打印快递单的小工具,要是用C的话,恐怕真的要学上一段时间,不过我觉得如果用C去写这样一个工具会学到不少真的东西,而易不能,我们太依靠复制粘贴了。
本帖最近打赏记录:共1条打赏M币+3
电子元件收集癖,看到电路板,不管有用无用都想收集来,以至于花钱无数,搬回垃圾无数,年少至今,一直未愈……
离线qiuchen0403

发帖
6007
M币
8709
专家
3
粉丝
18
只看该作者 8楼 发表于: 2017-09-30
这种东西,存在既是合理的,我也看过易语言,可惜还没开始学着用。
易语言是拉低了编程的门槛,用易语言不会做出多牛的大程序,但是能让很多人体会到开发的乐趣。有精力的话,肯定会学习其他语言了。
离线lailai518

发帖
717
M币
4365
专家
4
粉丝
19
只看该作者 9楼 发表于: 2017-10-01
先收藏着,字数补丁