OpenEdv-开源电子网

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

上位机讨论:大家说说一般用什么软件做上位机开发,各有什么优缺点啊?

[复制链接]

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
发表于 2013-3-21 15:23:52 | 显示全部楼层 |阅读模式

     “搞嵌入式的要是只会单片机的编程,那他永远成不了高手~”

虽说对于上位机不是一定要精通,做出的界面一定漂亮美观,不过要把嵌入式这碗饭吃好,

真要把上位机学一把,不管你是来做专业工控,还是自己写点小程序调试单片机(串口、USB),

都缺不了上位机的开发!

    对于一般的开发软件: VB、VC、Delphi 、C++Builder...
   大家讨论下你用的上位机开发软件,有哪些优点缺点 或者大家还有什么推荐的工具软件?。。。

                   


 

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

使用道具 举报

19

主题

107

帖子

0

精华

初级会员

Rank: 2

积分
195
金钱
195
注册时间
2015-3-5
在线时间
44 小时
发表于 2015-5-27 16:49:38 | 显示全部楼层
labview,用着不错,编程简单,界面漂亮
回复 支持 3 反对 0

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8033
金钱
8033
注册时间
2014-8-13
在线时间
1595 小时
发表于 2015-7-27 10:39:53 | 显示全部楼层
我本来是做windows平台软件的,像是桌面软件或者驱动开发(内核编程),以及少量逆向。  后来公司需要才转到嵌入式这边。
上位机基本上用VS做,语言C++。

好处嘛,可以兼容C,做底层的时候掰扯起来一种“开仓见麻豆”的感觉;又是面向对象,开发管理什么都好用,除非要写网络爬虫之类的东西,要不然几乎所有功能都适合,(爬虫也能做,但是没人会用C++做  );
简单说就是功能强大,应用范围广,运行效率高。至于开发效率嘛,会的话,非常快,不会的话,呵呵。

至于说用MFC界面太丑的,使用系统给的默认控件的确不咋滴,但是系统还是给出了自绘方法的。而且觉得界面丑的人可以使用dui库或者自己使用gdi++绘制界面。

至于说用哪种最好,这个见仁见智了。

如果仅仅需要写上位机,根本不关心windows,像是VB,delphi,C#等等都不错。
使用VC的话,也有好处的,因为MDK是C语言的,基本上不需要你掌握2种语言,而且上位机可以做一定高性能运算。
至于专业的数学运算,无疑matlab。
回复 支持 1 反对 0

使用道具 举报

105

主题

522

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1386
金钱
1386
注册时间
2012-10-23
在线时间
97 小时
发表于 2013-3-21 16:11:32 | 显示全部楼层
VB & LABVIEW
回复 支持 反对

使用道具 举报

54

主题

537

帖子

0

精华

高级会员

Rank: 4

积分
797
金钱
797
注册时间
2012-2-27
在线时间
7 小时
发表于 2013-3-21 16:12:56 | 显示全部楼层
C# 优点,简单
回复 支持 反对

使用道具 举报

8

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2012-7-12
在线时间
0 小时
发表于 2013-3-21 16:31:58 | 显示全部楼层
成完成任务,什么软件都可以。
回复 支持 反对

使用道具 举报

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
 楼主| 发表于 2013-3-21 17:13:16 | 显示全部楼层
回复【4楼】tv98:
---------------------------------
对于初学者什么软件好上手,好学习呢?
回复 支持 反对

使用道具 举报

8

主题

56

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2012-12-17
在线时间
0 小时
发表于 2013-3-21 17:59:29 | 显示全部楼层
工控用labview吧   其它还有很多啊, QT也不错   但是需要很多知识。
期待高手的意见
个人博客:http://blog.sina.com.cn/u/2539869495
回复 支持 反对

使用道具 举报

20

主题

75

帖子

0

精华

初级会员

Rank: 2

积分
182
金钱
182
注册时间
2013-1-21
在线时间
3 小时
发表于 2013-3-21 18:21:01 | 显示全部楼层
只会C#的飘过~
回复 支持 反对

使用道具 举报

8

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
108
金钱
108
注册时间
2012-7-12
在线时间
0 小时
发表于 2013-3-21 20:33:06 | 显示全部楼层
回复【5楼】SevenFly:
---------------------------------
初学者,易上手,好学习的,无非就是易语言了,可视编写,中文编程。
回复 支持 反对

使用道具 举报

18

主题

100

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1196
金钱
1196
注册时间
2012-3-26
在线时间
387 小时
发表于 2013-3-21 20:44:58 | 显示全部楼层
Qt不錯,只會點皮毛
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2013-3-22 00:09:05 | 显示全部楼层
个人首选的语言是C++, 因为这样的话单片机和上位机之间有很多代码是可以共用的. 现有的GUI库有很多, 例如
1. 上位机开发比较经典的是MFC, 但是近年来微软并不重视MFC, 而且它并不是跨平台的GUI库, 库本身的设计(对比其他一些GUI库)也相对比较糟糕
2. Qt 是个不错的选择, 跨平台, 功能相当强大, 设计的也很漂亮. 但是它对标准的C/C++做了一点改动(具体细节我不了解), 这就意味着Qt不是一个纯代码的GUI库, 要编译它的代码必须用Qt提供的编译工具.
3. GTK, 我不了解, 不作介绍.
4. wxWidgets, 我现在在用着这个, 开源跨平台, 和 CodeBlocks (开源跨平台的IDE)配合的很好, 而且可以用 wxSmith 很方便的设计界面. 目前感觉不错. 学过MFC上手 wxWidgets 很快.
https://github.com/roxma
回复 支持 反对

使用道具 举报

47

主题

255

帖子

1

精华

高级会员

Rank: 4

积分
641
金钱
641
注册时间
2012-11-3
在线时间
6 小时
发表于 2013-3-22 01:11:54 | 显示全部楼层
我们一直都在用matlab软件,感觉就是难,但是他的功能太强大了!掌握其中的一个方向都很困难。
回复 支持 反对

使用道具 举报

42

主题

568

帖子

0

精华

高级会员

Rank: 4

积分
784
金钱
784
注册时间
2010-12-19
在线时间
5 小时
发表于 2013-3-22 08:01:44 | 显示全部楼层
MFC & LABVIEW
一个上蹿下跳的猴子~~~
回复 支持 反对

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2012-11-8
在线时间
0 小时
发表于 2013-3-22 13:57:34 | 显示全部楼层
VC不好上手,很多的支持都是通过代码的形式,不像C#是用控件的方式,所以在进行程序设计的时候需要花很多的时间去处理代码,事情很多,

VB初了简单,好上手,其他的优点都没有,另外,很多的支持库在VB上用的话,都很麻烦,加上VB本身的语法原因,在数据的处理上很弱,基本上不区分int16,int32,char,unsigned char 这些关系

C#综合了VC和VB的优点,比较突出是在对COM的支持,是个比较好的平台,也比较容易上手,主要还是C#属于托管代码,和VC的纯代码不同,在进行项目设计的时候,能比较快的完成进度,缺点也还是有的,在处理字符char 和数字char 上还是比较弱,

LabView 接触不多,不好评价

C#可以做为通用的平台来用,如果不是较专业的应用,还是可以用C#来做,如果希望掌握更多的方方面面,同时,又不怕麻烦,可以考虑使用VC来做
回复 支持 反对

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2012-11-8
在线时间
0 小时
发表于 2013-3-22 14:01:42 | 显示全部楼层
回复【10楼】Pony279:
---------------------------------
别人估计就做个简单的X86下Windows 平台的应用软件,你推荐别人用QT,QT那么麻烦,才开始学编程就啃QT,怕是要打击信心,另外,MFC在做平台界面上,与已经支持可视化编程C#,VC差了好大一截,完成一个软件的工程量太大,根本划不来
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2013-3-22 14:31:49 | 显示全部楼层
回复【14楼】测试AT:
---------------------------------
"别人估计就做个简单的X86下Windows 平台的应用软件" 如果只是"简单的", MFC 都可以简单的完成这样的工作, 更不用说其他工具

"QT那么麻烦" 我没怎么学QT, 但是据我所知, QT是能够可视化的设计界面的. QT 的文档相当完善, 人家的宗旨就是"有如此优秀的Qt产品以及其帮助文档技术支持是多余的. 所以你的"麻烦"这种说法我很难理解.

"才开始学编程就啃QT" 没有 C/C++ 基础, 可以考虑其他语言, 我上面说了, 个人首选的编程语言是C++

"MFC在做平台界面上,与已经支持可视化编程C#,VC差了好大一截"  MFC也是可以支持拖控件的, 这点你不会不知道吧? MFC的灵活性强过C#这些语言, 只是做简单的UI需要手工写的代码量也很少. 学MFC最让人郁闷的是大部分新手看的VC6.0的教材却不懂得活用VS2010或者更新的IDE, VC6.0那么古老, 麻烦当然是自找的. 我自己也是从MFC学过来的. 但是MFC 存在着他自己的问题, 只能说它是经典. MFC是自下而上设计的, 封闭上做的并不好, 有很多地方都很容易让用户觉得疑惑, 而且一定要用 Visual Studio 且不是跨平台的, 近年来微软MFC的更新和支持也比较少. 所以想选择MFC的话不如用其他的C++库如QT, wx之类的.
https://github.com/roxma
回复 支持 反对

使用道具 举报

108

主题

1433

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2234
金钱
2234
注册时间
2012-4-30
在线时间
7 小时
发表于 2013-3-22 14:46:41 | 显示全部楼层
MFC比较麻烦,不推荐。一些其他编译平台很轻松就能实现的功能,MFC就比较麻烦。
以前用MFC做过一些东西,真心比VB和C#麻烦的多。

C#和VB比较简单。

语法结构也差不多,更改很少。
回复 支持 反对

使用道具 举报

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
 楼主| 发表于 2013-3-24 21:52:47 | 显示全部楼层
回复【10楼】Pony279:
---------------------------------
没有人使用过Delphi 和C++Builder吗?也是可视化的设计界面,面向对象语言,拉控件就是。
回复 支持 反对

使用道具 举报

2

主题

15

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2012-11-8
在线时间
0 小时
发表于 2013-3-25 10:16:00 | 显示全部楼层
回复【15楼】Pony279:
---------------------------------
QT不是一般的麻烦,之前在还没有Android 的时候,在Linux 内核上运行图形界面只能用QT,听Linux 系统工程师介绍,QT图形界面的制作不是一般的麻烦,一般Linux 驱动工程师也就两个人,QT就要4个人来做,

关于你对MFC的看法,从普通人的角度去看,现在的人根本就没有那么多的时间去在繁琐的代码里面浪费时间,同样是设计一个界面,MFC需要比VS的设计语言多花几倍的时间和精力,这个时候,不论MFC有什么优势,在项目经理看来,不能按时间做不东西来,全部都是你的错,至于你是用MFC还是VS,项目经理是不会关心的
回复 支持 反对

使用道具 举报

36

主题

1263

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1612
金钱
1612
注册时间
2012-6-15
在线时间
39 小时
发表于 2013-3-25 10:24:38 | 显示全部楼层
回复【17楼】SevenFly:
---------------------------------
我用 的 C++BUILDER
回复 支持 反对

使用道具 举报

25

主题

683

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1351
金钱
1351
注册时间
2012-4-25
在线时间
195 小时
发表于 2013-3-25 10:51:48 | 显示全部楼层
我觉得MFC蛮简单的,基本架构和QT 很相似的。MFC实现功能简单,但是界面确实 不怎么好看
1-1
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2013-3-25 12:35:47 | 显示全部楼层
回复【18楼】测试AT:
---------------------------------
我用MFC的是可以拖控件的, 在VS里面只要双击一下界面编辑器里的按键, IDE就可以自动生成相应的消息响应函数. 如果已经有消息响应函数, IDE就会自动定位到那个函数. 所以说如果只是实现功能, 用MFC做花的精力是很少的. 如果VS配合VAX, 写起代码来就更轻松了.
你们所谓的麻烦, 应该是使用的工具比较老吧.

回复【20楼】mygod:
---------------------------------

用MFC做的界面确实比较难看的. 这个主要是微软没有很好的更新的问题, 可能还要考虑一些历史的因素. 用其它语言做的界面好看其实主要是用了现有的模板而已, 应用层的代码上其实也没有多少实质性的东西.

回复【17楼】SevenFly:
---------------------------------
嗯, 现在很多工具都是支持可视化的设计了. 做起界面来都是比较方便的.
https://github.com/roxma
回复 支持 反对

使用道具 举报

头像被屏蔽

263

主题

455

帖子

1

精华

禁止访问

积分
1212
金钱
1212
注册时间
2011-9-25
在线时间
12 小时
发表于 2013-3-25 13:17:47 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

56

主题

289

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2012-11-16
在线时间
65 小时
发表于 2014-11-20 09:36:38 | 显示全部楼层
我还是比较习惯用QT
回复 支持 反对

使用道具 举报

1

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2013-9-11
在线时间
5 小时
发表于 2014-12-17 14:33:33 | 显示全部楼层
用C++Builder的人好像不多啊。。。飘过。。。
回复 支持 反对

使用道具 举报

164

主题

1230

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1477
金钱
1477
注册时间
2014-5-21
在线时间
342 小时
发表于 2014-12-29 13:47:21 | 显示全部楼层
labview,matlab gui,C#,VB都用过,总体感觉LABVIEW 和C#比较好用,不需要学的太深入,精力放在嵌入式上面,上位机串口调试数据做个界面,简单点就好
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-5-27
在线时间
0 小时
发表于 2015-5-27 09:55:28 | 显示全部楼层
有没有上位机软件开发块的大神啊,公司急缺这类人才,有意者私聊!!!
回复 支持 反对

使用道具 举报

8

主题

67

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
226
金钱
226
注册时间
2013-9-27
在线时间
26 小时
发表于 2015-5-27 10:24:14 | 显示全部楼层
我一直用的delphi,看楼上的回复基本没用的。。。delphi很好用的,也比较简单,只是现在没落了,用的人很少了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2015-6-29
在线时间
0 小时
发表于 2015-6-29 13:03:55 | 显示全部楼层
回复【26楼】sisiyezi:
---------------------------------
我做的是上位机开发,你们用的什么工具?
QQ327380796
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-7-24
在线时间
0 小时
发表于 2015-7-24 13:00:19 | 显示全部楼层


请问各位高手,这个上位机界面用的什么软件编写的。串口与51单片机通信。右为二级界面。
正在自学当中;当然网上查资料是最主要的方法,不然呢!
回复 支持 反对

使用道具 举报

0

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2011-10-29
在线时间
26 小时
发表于 2016-3-28 14:32:45 | 显示全部楼层
牛啃南瓜 发表于 2015-7-24 13:00
请问各位高手,这个上位机界面用的什么软件编写的。串口与51单片机通信。右为二级界面。

只看界面看不出的,exe发我一下,回头告诉你。
回复 支持 反对

使用道具 举报

1

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-10
在线时间
49 小时
发表于 2016-3-29 01:50:01 | 显示全部楼层
amyoubo 发表于 2015-5-27 10:24
我一直用的delphi,看楼上的回复基本没用的。。。delphi很好用的,也比较简单,只是现在没落了,用的人很少 ...

俺从delphi1.0就开始用,在这之前是pascalV7.
俺只有在编写device driver时才不得不用VC。

delphi编程简单省时间,控件风格漂亮。

只要能够用网络(有线或无线)把上下位机连起来形成分布式系统,两者不存在什么代码共享的问题,本来就不是干的一个层次的事情嘛。

把数据采集,控制IO让嵌入式前段完成,后端做显示、记录、计算和控制决策,这是最典型的搭配,也能够发挥各自的优点。

有人说,只用c语言习惯,其实同时用几种语言也很有意思,过去常讲混合语言编程是进阶的必须。

逆水行舟不进则退
回复 支持 反对

使用道具 举报

8

主题

569

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2363
金钱
2363
注册时间
2015-5-8
在线时间
320 小时
发表于 2016-5-17 16:02:23 | 显示全部楼层
经常用vb,感觉还可以
回复 支持 反对

使用道具 举报

13

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
405
金钱
405
注册时间
2016-2-2
在线时间
66 小时
发表于 2016-8-3 17:25:19 | 显示全部楼层
大家好,帖子还在回复吗,如果是用C#的话,能推荐下快速入门的教程吗
回复 支持 反对

使用道具 举报

5

主题

17

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2016-12-7
在线时间
10 小时
发表于 2016-12-16 11:54:00 | 显示全部楼层
正在用易语言的 默默懵逼????
回复 支持 反对

使用道具 举报

8

主题

569

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2363
金钱
2363
注册时间
2015-5-8
在线时间
320 小时
发表于 2017-4-13 13:10:43 | 显示全部楼层
刚学完C#,和之前VB不分伯仲
回复 支持 反对

使用道具 举报

1

主题

18

帖子

0

精华

高级会员

Rank: 4

积分
708
金钱
708
注册时间
2019-5-13
在线时间
44 小时
发表于 2020-4-24 15:57:19 | 显示全部楼层
我认为labview比较简单
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2020-7-2
在线时间
8 小时
发表于 2021-1-5 16:02:17 | 显示全部楼层
用什么
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-22 12:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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