嵌入式开发常用GUI,emWin、TouchGFX、MiniGUI、Qt

内容纲要

GUI:Graphical User Interface,图形用户界面。以前,因为MCU的资源和处理能力有限,很少有基于MCU通用的GUI。现在,MCU资源增多,处理能力也强了,同时市场需求也增多了,GUI功能也越来越丰富了。

下面我们来看看嵌入式开发常见的GUI有哪些?

一、emWin

官网地址:www.segger.com/products/user-interface/emwin

emWin属于SEGGER公司下面的一种GUI产品,一种嵌入式GUI解决方案。业界领先的嵌入式图形库,专业的嵌入式GUI。

emWin支持在任何嵌入式系统上创建高效、高质量的图形用户界面,emWin支持资源受限的微控制器的系统,运行令人惊叹的交互界面。

emWin与单任务和多任务环境兼容,可以使用专有的操作系统,也可以与任何商业RTOS兼容。它以C语言源代码提供,使其成为嵌入式市场的专业、通用GUI,可用于多种不同的场景。

特点:

  • 创建惊人的图形与功能强大,易于使用的API

  • 适用于任何显示器和微控制器

  • 适用于任何ANSI C/C++开发环境

  • 体验可靠的图形解决方案

  • 嵌入式图形用户界面解决方案

拓展:emWin和STemWin、μCGUI的关系

相信大家对这几个GUI都不陌生,但你知道他们的来源和关系吗?

简单的说:STemWin和μCGUI都是由emWin发展而来。

STemWin由SEGGER公司授权给ST(意法半导体),使用ST芯片的用户可以免费使用STemWin。同时,还针对ST的微控制器做了专门的优化,比如在使用STM32F4带FPU的芯片时,STemWin在需要浮点处理的地方专门做了优化。

说起μCGUI,相信大家都知道μCOS,都属于Micrium公司。μCGUI是SEGGER公司授权给Micrium公司,并为其定制的一套图形软件库。

总而言之,uC/GUI 和 STemWin 都是 Segger 公司的 emWin 产品。

二、TouchGFX

官网地址:https://www.touchgfx.com

ST站内地址:https://www.st.com/content/st_com/en/stm32-graphic-user-interface.html

TouchGFX属于Draupner Graphics公司的GUI产品,在去年(2018年7月),TouchGFX被ST收购,在STM32上可以免费使用TouchGFX。

TouchGFX升级至V4.10,扩展STM32生态系统,并集成在STM32CubeMX中。

三、MiniGUI

网址:http://www.minigui.com

MiniGUI是一款国产GUI,一款面向嵌入式系统的高级窗口系统和图形用户界面(GUI)支持系统,由魏永明先生于1998年底开始开发。2002 年,魏永明先生创建北京飞漫软件技术有限公司,为MiniGUI 提供商业技术支持,同时也继续提供开源版本,飞漫软件是中国地区为开源社区贡献代码最多的软件企业。

MiniGUI丰富的功能和可配置性使得它既适用于运行在30MHz CPU的低端设备,也适用于使用GPU的高端设备。为嵌入式和智能物联网设备提供一个成熟的、经过验证的跨平台GUI系统。

MiniGUI技术优势:

和其它针对嵌入式产品的图形系统相比,MiniGUI 在对系统的需求上具有如下几大优势:

  • 可伸缩性强

  • 轻型、占用资源少

  • 高性能、高可靠性

  • 可配置性

就在前不久(2019年9月19日),北京飞漫软件技术有限公司宣布:将在 MiniGUI 4.0.2 版本中支持国产物联网操作系统 RT-Thread!

四、Qt

官网:https://www.qt.io

想必学习嵌入式开发的,都应该知道Qt,Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。

2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,新增WinRT、Beautifier等插件。

2019年8月21日, Qt公司推出了Qt for MCUs,使客户能在经济高效的微控制器(MCU)上创建流畅的用户界面。

Qt for MCUs的主要优势:

  • 复用您在微控制器上的现有技能

  • 通过跨设备(从高端到大众设备)的技术一致性,来降低维护成本

  • 在不影响图形性能的前提下,向微控制器演进以降低硬件成本

  • 将传统解决方案升级到现代的跨平台图形工具包

Qt商业和开源版差异:

Qt for MCUs参考网址:

https://resources.qt.io/cn/the-qt-company-introduces-qt-for-mcus

五、其他

目前,市面上的GUI有很多,但各有各的特点,应用场景不同,应用平台不同等等。

包括国内周立功有一套AWTK,针对嵌入式Linux系统的GUI解决方案。

来源:https://blog.csdn.net/ybhuangfugui/article/details/101442421