FlowCode: 另一个图形化的嵌入式开发平台

记得大学的时候,我们的单片机老师在上课的时候强调:无论多么简单的程序或者多么简单的项目,首先要用流程图把整个过程给画下来,然后再逐步coding。当时我就在想,如果真的事无巨细的把所有流程图都画下来了的话,那么岂不是把各个功能函数直接导进去就可以了,何必coding呢?没错,今天推荐的一款软件就是基于这样的思路。

本公众号的主题大部分是与LabVIEW有关的,而今天推荐的这款软件呢,与LabVIEW有着异曲同工之妙,但是却又不一样。相似的地方是,他们都可以归为图形化编程语言或平台的范畴,也即G语言。但不同的地方就更多了,FlowCode专注于嵌入式开发,而且其核心思想是基于流程图。而LabVIEW则是基于数据流的模式。官方对此软件的定位如下:

Flowcode is one of the World’s most advanced graphical programming languages for microcontrollers which allows those with little experience to develop complex electronic systems. Flowcode is used extensively in both education and industry.

        官方对此软件的优势描述为如下五点:

1. It’s easy-to-use: Flowcode’s graphical environment makes it a perfect tool for teaching embedded systems or developing complex designs. (易于使用,基于图形化的编程语言,这一点跟LabVIEW类似。)

2. Advanced test & debugging features: including simulation, code-profiling and Ghost technology allows users to make use of in-circuit-test (ICT) and in-circuit debug (ICD) features including a built-in oscilloscope and data recorder. (优越的测试与调试特性,方便的在线调试与在线测试,这一点跟LabVIEW类似,也跟前一篇推荐的王电令开发的平台有一样的效果,也就是可以在前面板直接模拟或显示程序运行结果与数据。)

3. Non-programmer friendly: mechanical engineers, test engineers, chemical engineers and just about any other engineer working with microcontrollers can easily develop systems for MCU’s.(其实跟第一点类似,由于是基于图形化编程,基于流程图编程,无需遵循传统C语言那样的语法结构,所以无论是测试工程师,机构工程师等等任何工程人员都可以掌握并应用的。嗯,这理念跟NI真是十分的契合啊。会不会有哪一天NI把这家公司给收购了?:-) )

4. Microcontroller flexible: with support for a host of PIC devices as well as Atmel, Arduino and ARM MCU’s, Flowcode gives you a broad range of target devices for your development needs. Code-porting is also easier than ever before. (支持的器件种类繁多,不局限于某一个或几个控制器品牌。此软件的早期V4版本主要是支持PIC单片机,也就是Microchip家的,可能早期跟Microchip合作比较紧密。到目前的版本,也是对PIC的支持最为完整,与PIC的IDE以及ICD3, PICKIT3等等的结合也最为紧密。当然,新版本支持的器件已经相当广泛了。)

5. It’s FREE: users who do not require commercial or academic rights, additional features or full device support can use the free version of Flowcode 7 for developing applications at home or to prototype designs.(这句话真是要大打折扣了,实际上免费软件版本所能支持的功能与器件非常少,屈指可数的。当然,使用免费版本在其所支持的器件范围内,也足以开发出相应的产品,也足以体会到FlowCode的奥秘了。嗯,在网上登记注册后,会有一个临时的全功能License试用,时间好像是一个月。)

标注6的区域,是一个典型的流程图,而实际上这就是代码区域了,所有的代码工作可以在这里完成。

是不是很熟悉的画面,这是仿真与调试面板,非常的直观方便的,这是Keil-RealView,IAR等等所不同的地方。

对于一款“懒人”工具,没有丰富的功能模块的支持是不行的。这是一部分功能模块,也是相当的丰富了。当然了这里面的绝大部分都是需要License支持的。

基于使用经验(也有少量的案例成功应用在项目中),说几点体会。

1、功能模块还是相当丰富的。笔者初期并没有购买License,但是有注册一个临时的全功能License,所以体会了一下。

2、支持导出为C语言代码,而且导出的代码的可读性比NI的C Generator产生的代码要强得多。见仁见智吧。

3、虽然没有C语言的语法规范,但是依然有它自己的规则。刚开始也走了一些弯路的,太懒也还是不行的 :-)

4、软件支持中文,但是有些中文翻译不伦不类。

5、国内有相关的书籍,但是版本都比较低,V4与V5居多,然后V6与V7的变化是相当大的。所以从图书馆借了一本书后,没看2页就还了。如今已经升级到V8版本,V8版本支持的器件更丰富了,甚至于支持树莓派等掌上电脑。

6、国内有License的代理商,好像在南京,但是好像推广的积极性不高。授权方式也相当的灵活,也就是可以按需授权,比如按功能模块,按支持芯片种类等等模式购买授权。价格也适中。曾经考虑购买License,但是对方爱理不理也就作罢。(笔者已经入坑了,在2018年黑色星期五的优惠时间分两期买了一套全功能版License,直接欧元买的,没经过国内代理商。目前License管理并不是特别严格,官方留了不少漏洞,可以很方便的体验到全功能版本。有兴趣的可以私信或留言。)

7、无需依赖第三方编译器。所以一次授权就可以了,没有后续烦恼。

Reference:

  1. 官方下载地址:http://www.matrixtsl.com/flowcode/download/

  2. 《电子设计案例教程:基于Flowcode的流码编程》化学工业版社

(0)

相关推荐