记得还在学校的时候,就为在Windows下开发图形界面程序而苦恼。因为我不是计算机专业的,学校没有专门给我们专业开设相关的课程。大家都知道,电子工程师开发产品时很多时候都是需要和图形界面程序(电子工程师们通常称为“上位机”,以下便使用这种说法)打交道的。程序一般都不会很大,但是很有用处,另外,很多时候上位机也是产品的一部分。
学校没有开设相关的课程,那么只有自学了。那么,用什么来编写上位机呢?因为我只学过一门编程语言:C语言。
在学校的时候我选择了VC,然后便是学习C++、什么SDK等,折腾了很久,临毕业时,基本上只能写一点简单的东西,而且还是直接调用API,什么消息处理、画图等全部都是一行一行代码写出来的,基本上不实用,而且开发效率很低。
毕业后,我进了一家工控行业的公司,我们的行业基本上就是数据采集、处理等,需要用到很多体积小巧、功能实用的上位机。在开发新产品的过程中,经常需要快速编写上位机来帮助测试、简化工作等。
因为工作需要,我又拿起了VC。曾经一段时间非常努力,甚至晚上鼓捣到一二点,最后我觉得VC算是基本入门了,因为能用它写一点小工具以协助产品开发。当然,仅是很小的那种。
用VC写过几个小程序后,发现对我来说,它有点不太适合了。想用好比较困难,界面丑陋,当然,最主要的还是开发效率很低,我大部分时间没法很快的做出一个想要的程序。
同行很多都推荐用Delphi,而且我也有同事在使用它。但是了解了之后,我决定不选择它,因为我讨厌为了写个上位机而专门学一门大部分地方都用不到的Pascal语言。我最喜欢的还是用C/C++,从芯片驱动到电子产品的控制和处理程序,我都用它们,上位机开发我也希望用它们。
后来知道了C#,我喜欢它做出来的炫丽的界面,相对Pascal来说,我更愿意接收C#,因为它是MS的主打产品,也有向嵌入式发展的动向。但是后来我还是放弃了它,一门经常性更新换代、不断发布新版本的语言,我真的折腾不起。
曾经一度在C#和JAVA之间徘徊,JAVA在很多消费电子中有应用,谁能保证我将来不会换一份开发手机的工作呢?当然,后来我也没有选择JAVA,这里面有因素很复杂,我自己都没法理清。
迷茫的时期,想到了顶顶大名的Labview,据同行说他用了很多年了,做快速开发确实相当不错。于是,我便投向了它。用了一两次之后,我发现我对它完全提不起兴趣、提不起劲来,这主要是它的编程语言是G语言,我讨厌花精力去钻研,就和Pascal一样。
但在尝试Labview的过程中,我发现了它的兄弟,Labwindows/CVI。据说它和Labview的区别就是,CVI用的是C语言,而Labview用的是G语言。
用C语言好啊,C语言不正是我的拿手好戏吗?于是试用了一下,感觉确实不错,界面还算美观,开发速度也很快。而且,除了标准控件外,它也有针对性的给出了很多控件,可以直接使用。比如LED控件、表盘控件等。它还提供了一个分析库,用来做各种分析和处理。
坚持用了一段时间,发现Labwindows/CVI确实很适合我,或者应该说,它很适合电子工程师们,特别是工控行业的工程师们。
国内有关Labwindows/CVI的资料比较少,我基本上是啃英文资料的。开通博客的目的,就是把我使用的点点滴滴记录下来,后来者不再需要去啃英文资料就可以入门了。
用户1754334 2014-4-29 10:15
用户1724741 2013-11-25 19:10
用户441272 2013-7-15 17:30
用户377235 2012-10-21 00:36
JAVA,C++都接触过,但都没怎么深入。上位机使用过VB,能做出一些简单的程序但是做工控类的检测倒不是很适合。还尝试过学习组态软件,像组态王之类的,发现这些入门简单也能有比较好的界面但是灵活性不够。labview最近才接触,对于G语言非常不习惯,像我们这种常年与电子产品打交道的一般都是用C语言,使用C语言进行结构化编程,实现各类状态机已经非常得心应手,真是希望能有一款开发软件能够用C就能快速开发出画面丰富,逻辑功能强大的上位机,终于遇到了labwindows,它可能是最适合电子工程师的!
用户403995 2011-11-24 11:07
用户1524712 2011-10-13 16:59
用户352673 2011-7-12 16:12
用户565622 2011-4-9 09:00