在嵌入式系统开发中,选择一个合适的图形用户界面(GUI)库
是至关重要的。在屏幕上显示的时候,使用现成的图形库
,这样开发人员就不需要弄清楚底层任务,例如如何绘制像素、线条、形状,如果再高级一点,则可以绘制某些对象,例如窗口、按钮等。
前两期我们介绍了10个,今天继续介绍5个。
MCU 的 TOP 15 图形GUI库:选择最适合你的图形用户界面(一)
MCU 的 TOP 15 图形GUI库:选择最适合你的图形用户界面(二)
下面继续介绍5个
备受欢迎的嵌入式GUI库,分析它们的特点、优缺点、使用场景以及生态系统
,以便开发人员能够更好地选择适合自己项目的GUI库。
11、PEG Graphics Software
https://www.nxp.com/design/design-center/software/embedded-software/peg-graphics-software:PEG-HOME
PEG Graphics Software 是一款用于嵌入式系统的图形用户界面(GUI)库,由NXP Semiconductors开发
。PEG(Portable Embedded GUI)旨在简化和加速嵌入式GUI的开发,提供了丰富的图形元素和功能,适用于多种嵌入式平台。
NXP的PEG Pro、PEG Plus和PEG Lite产品包括一个用于嵌入式开发的GUI库,可与实时操作系统完美配合。图形开发解决方案工具允许开发人员使用PEG库和外部资源来部署用户界面屏幕和控件来生成C++代码。
特点
跨平台支持:PEG Graphics Software被设计为可移植的嵌入式GUI库,支持多种处理器架构和嵌入式操作系统
,包括ARM、MIPS等,以及FreeRTOS、ThreadX等。
轻量级设计:PEG的设计注重轻量级,使其适用于资源受限的嵌入式系统,如单片机(MCU)等。
高度可定制性:PEG提供了丰富的图形元素和主题,开发者可以根据项目需求自由调整外观和交互行为。
硬件加速:PEG支持硬件加速技术
,提高了图形渲染性能,适应对图形性能有高要求的嵌入式应用。
使用场景:
资源受限嵌入式系统:PEG适用于资源有限的嵌入式系统,例如一些简单的MCU项目,提供了轻量级的GUI解决方案。
实时嵌入式应用:由于其对硬件加速的支持,PEG适用于需要实时图形渲染的嵌入式应用,如汽车信息娱乐系统、家用电器等。
学习难易程度:
PEG Graphics Software的学习曲线相对较平缓,特别是对于有嵌入式开发经验的开发者。其文档和示例代码有助于用户快速上手。
生态支持:
PEG Graphics Software相对较小的社区和生态系统,但NXP Semiconductors提供了相应的技术支持和文档。用户可以在NXP的支持渠道中获取相关的信息和帮助。
PEG Graphics Software是一款轻量级、跨平台的嵌入式GUI库,适用于资源受限的嵌入式系统。其高度可定制性和硬件加速支持使其成为一些简单嵌入式项目的合适选择。然而,对于需要更复杂、功能丰富的用户界面的项目,可能需要考虑使用其他更全面的GUI库。
12、EasyGUI
https://www.easygui.com/
EasyGUI 是一款专为嵌入式系统设计的轻量级图形用户界面(GUI)库,它的目标是简化嵌入式GUI的开发过程,降低学习曲线,并在资源受限的环境中提供基本的用户界面功能。
EasyGUI可以快速高效地创建嵌入式系统的图形用户界面。几乎支持所有彩色和单色显示器、C 编译器和微控制器。easyGUI 是您完整的视觉开发系统,提供先进的屏幕处理系统、全面的字体系统
、完整的图形库和多语言应用程序支持
,以及对亚洲和中东语言的完整 UNICODE 支持。
特点
轻量级设计:EasyGUI以小巧的体积和低内存占用为特点,用純C语言编写
库,适用于资源受限的嵌入式系统,如单片机(MCU)等。
简单易用:EasyGUI注重提供简单而直观的API
,使得开发者能够迅速上手,减少开发时间和成本。拥有许多图形组件,从简单的文本和线条到按钮和图形,允许构建简单和复杂的 GUI。
支持多种嵌入式平台:EasyGUI支持多种嵌入式平台,包括不同的处理器架构和操作系统,使其更具灵活性。
基本图形元素:EasyGUI支持从单色到每像素 24 位真彩色的所有颜色深度
,提供了一些基本的图形元素,如按钮、文本框等,以帮助用户构建基本的用户界面。
使用场景:
资源受限嵌入式系统:EasyGUI适用于资源受限的嵌入式系统,特别是一些简单的MCU项目,为这些项目提供了轻量级的GUI解决方案。
基本嵌入式用户界面:EasyGUI适用于对用户界面需求相对简单的嵌入式应用,如一些传感器控制、简单显示屏等。
学习难易程度:
EasyGUI的学习曲线相对较平缓,特别是对于有一定嵌入式开发经验的开发者而言。其简单而直观的API设计有助于用户快速上手。
生态支持:
EasyGUI相对较小的社区和生态系统,但可能提供了基本的文档和示例代码。由于其轻量级的特点,其社区支持可能较为有限。
EasyGUI是一款注重轻量级和简单易用的嵌入式GUI库,适用于资源受限、对用户界面要求相对简单的嵌入式系统。对于一些基本的MCU项目或简单嵌入式应用,EasyGUI提供了一个轻便而有效的选择。然而,对于需要更复杂、功能丰富的用户界面的项目,可能需要考虑使用其他更全面的GUI库。
13、RamTex
https://www.ramtex.dk/
RamTex是一个用于嵌入式处理器系统的图形显示控制器库,GUI C 源代码库为嵌入式应用程序提供了强大而灵活的图形用户界面。所有 LCD、TFT 和 OLED 驱动程序库都实现了基本的高级函数接口,所有库均作为独立于处理器、符合标准 C 的源代码提供。
特点
显示库:针对不同的显示控制器,拥有非常多的库,包括灰色驱动显示库。
字体库:字体、符号和文本操作工具IconEdit
生态支持:
网上资料较少,使用需谨慎。
14、Guiliani
https://www.guiliani.de/mediawiki/index.php?title=The_C%2B%2B_GUI_framework_for_all_embedded_engineers
Guiliani 是一款用于嵌入式系统的图形用户界面(GUI)框架,由TES Electronic Solutions GmbH开发。Guiliani注重提供高度定制
和可扩展
的用户界面解决方案,适用于多种嵌入式应用,包括汽车仪表盘、医疗设备、家电等。
特点
高度可定制性:Guiliani提供了丰富的图形元素和主题,开发者可以根据项目需求自由调整外观和交互行为。拥有所见即所得 Guiliani 流媒体编辑器
(GSE),可快速完成设计工作。
跨平台支持:Guiliani支持多种硬件平台和操作系统,包括ARM、x86等处理器架构,以及FreeRTOS、Linux等嵌入式操作系统。
硬件加速:Guiliani利用硬件加速技术
,提供高性能的图形渲染,适应对图形性能有高要求的嵌入式应用。
支持触摸屏和非触摸屏设备:Guiliani支持触摸屏和非触摸屏设备,为开发者提供更多的输入选项。
可扩展的架构:Guiliani的架构设计支持模块化和可扩展性,使得开发者能够轻松地集成和定制新的功能。
使用场景:
汽车仪表盘
:Guiliani适用于汽车仪表盘和车内娱乐系统,提供了复杂而现代的用户界面。
医疗设备
:由于其高度可定制的特性,Guiliani适用于医疗设备等需要复杂用户界面的嵌入式应用。
家电和工控系统
:Guiliani在家电和工控系统等领域也有着广泛的应用,满足对用户体验有要求的项目。
使用 Guiliani 构建的咖啡机 GUI
学习难易程度:
Guiliani的学习曲线较为平缓,尤其是对于有图形设计和嵌入式开发经验的开发者而言。其文档和示例代码有助于用户快速上手。
生态支持:
Guiliani拥有积极的社区和技术支持。用户可以在社区中获得支持、交流经验,并获取额外的文档和教程。技术支持方面,TES Electronic Solutions GmbH也提供了专业的支持服务。
Guiliani是一款强大、高度可定制的嵌入式GUI框架,适用于各种复杂嵌入式应用。其跨平台支持、硬件加速和可扩展的架构使其成为对图形性能和用户体验有高要求的项目的理想选择。
15、MPLAB® Harmony Graphics Suite
https://www.microchip.com/en-us/tools-resources/configure/mplab-harmony/graphics-suite
MPLAB® Harmony Graphics Suite 是Microchip公司推出的一套用于嵌入式系统的图形用户界面(GUI)解决方案。作为MPLAB Harmony框架的一部分,该图形套件旨在简化嵌入式GUI的设计和开发,并提供高度可定制性。
MPLAB® Harmony Graphics Suite使用功能强大且免费的 MPLAB Harmony 图形套件 (MHGS),使用经济高效的 32 位微控制器 (MCU) 创建具有专业外观的嵌入式图形用户界面 (GUI) 变得前所未有的简单。MHGS 可在 MPLAB Harmony 嵌入式软件开发框架内使用,经过专门设计,可充分利用 Microchip 高性能 32 位的功能MPLAB Harmony。
特点
无需专业图形设计技能:MPLAB Harmony Graphics Suite设计成易于使用,即使是没有专业图形设计经验的开发者也能够创建现代且引人注目的用户界面。
集成于MPLAB Harmony框架:作为MPLAB Harmony框架的一部分,该图形套件与Microchip的其他工具和库实现了紧密集成,为开发者提供全面的嵌入式开发解决方案。
跨平台支持:MPLAB Harmony Graphics Suite支持多种Microchip MCU平台,包括PIC32、SAM E等系列,使其适用于不同硬件架构。
图形元素和部件:所见即所得 GUI 绘图屏幕和工具组织器,提供了一系列图形元素和部件,包括按钮、文本框、图表等,以简化用户界面的设计,图像资源、小部件和文本等对象可以直接在显示区域上放置、移动和修改,然后在目标系统上精确地重新创建。
可定制主题和样式:允许开发者轻松自定义用户界面的主题和样式,以适应特定项目的设计需求。
使用场景:
嵌入式系统开发:MPLAB Harmony Graphics Suite适用于各种嵌入式系统开发,包括工控系统、消费电子产品等。
Microchip MCU项目:特别适用于使用Microchip MCU的项目,充分发挥硬件和软件集成的优势。
学习难易程度:
MPLAB Harmony Graphics Suite的学习曲线较为平缓,特别是对于熟悉MPLAB Harmony框架的开发者而言。提供了详细的文档和示例以帮助用户快速上手。
生态支持:
作为Microchip的产品,MPLAB Harmony Graphics Suite享有强大的技术支持和庞大的用户社区。用户可以在社区中获取支持、分享经验,并参与开发讨论。
MPLAB Harmony Graphics Suite是Microchip提供的一套强大的嵌入式GUI解决方案,适用于各种Microchip MCU项目。其与MPLAB Harmony框架的紧密集成、易用性和可定制性,使其成为Microchip用户在嵌入式系统中设计用户界面的理想选择。
最后我们罗列一下15个GUI的收费情况:
国产嵌入式GUI有哪些还不错的,欢迎留言区评论!