zoukankan      html  css  js  c++  java
  • 【第3版emWin教程】第1章 当前主流的小型嵌入式GUI

    教程不断更新中:http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429

    第1章   当前主流的小型嵌入式GUI

    这几年Cortex-M系列单片机发展迅猛,功能也越来越强劲,随之而来的就是小型嵌入式GUI也得到很好的发展。本章节就为大家介绍下当前主流的小型嵌入式GUI。

    1.1 当前主流的嵌入式GUI

    1.2 TouchGFX介绍

    1.3 Embedded Wizard GUI介绍

    1.4 emWin(uCGUI)介绍

    1.5 Qt for MCU介绍

    1.6 Crack Storyboard介绍

    1.7 Altia GUI介绍

    1.8 μGFX介绍

    1.9 ThreadX GUIX介绍

    1.10 总结

    1.1    当前主流的嵌入式GUI

    当前主流的小型嵌入式GUI主要有:emWin(uCGUI),TouchGFX,Embedded Wizard GUI,uGFX,MicroChip GUI ,Qt for MCU,Crack Storyboard,Altia GUI,ThreadX GUIX等。当然,还有其它的GUI,这里把前面说到的其中几款GUI给大家进行简单的介绍。

    1.2    TouchGFX介绍

    TouchGFX发布已经有5-6个年头了,以界面华丽,流畅以及强劲的TouchGFX Designer著称。官方地址:https://www.touchgfx.com/

    2018年,正式被ST收购,当前主要用于STM32平台。下面贴几张TouchGFX实际的显示效果:

     

     

     

     

     

    下面是TouchGFX Designer的软件效果,功能比较强劲,让界面的创建变得比较容易:

     

    关于TouchGFX的介绍就给大家说这么多,更多相关知识可以到TouchGFX的官网去查看。从上面的几张图可以看出,TouchGFX设计的界面效果还是很漂亮的。

    TouchGFX在STM32官方探索板或者评估板上面的演示效果:

    •   TouchGFX在STM32F429上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=8064

    •   TouchGFX在STM32F469上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=15152

    •   TouchGFX在STM32F769上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=17901

    •   TouchGFX在STM32H750上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=94379

    1.3    Embedded Wizard GUI介绍

    Embeded Wizard GUI也是发布了5-6年的嵌入式GUI,同样以华丽,流畅的界面和强劲的GUIBuilder著称。官方地址:http://www.embedded-wizard.de/

    下面贴几张Embeded Wizard GUI实际的显示效果:

     

     

     

     

     

    独创Chora界面编程语言,让大家的界面编程极其简单,GUIBuilder上面含有非常多的控件,皮肤和主题供用户选择,且支持调试,实际效果如下:

     

     

    关于Embeded Wizard GUI的介绍就给大家说这么多,更多相关知识可以到Embeded Wizard GUI的官网去查看。从上面的几张图可以看出,Embeded Wizard GUI设计的界面效果还是很漂亮的。美中不足的是Embeded Wizard GUI也是要收费的,具体收费标准看这里:http://www.embedded-wizard.de/pricing.html

     

    Embeded Wizard GUI在STM32官方探索板或者评估板上面的演示效果:

    •   Embeded Wizard GUI在STM32F746上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=10850   

    •   Embeded Wizard GUI在STM32F769上面的超炫演示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=19548   

    1.4    emWin(uCGUI)介绍

    emWin属于老牌的嵌入式GUI了,有着20年的历史了,软件架构和功能比较成熟了。关于emWin的介绍可以看我们的第1版emWin教程,第2版emWin教程和第3版emWin教程。官方地址:https://www.segger.com/products/user-interface/emwin/

    •   emWin教程第1版

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=2932

    •   emWin教程第2版

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=19834

    •   emWin教程第3版

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429

    •   emWin(uCGUI)更新记录

    emWin(uCGUI)的历史比较悠久了,首版发布于1999年6月,下面是从V1.0开始的部分更新记录。

    Version control for emWin/GSC
    
    000804 V1.32    a) various changes implemented
    000403 V1.30f   a) LCD.h V1.30 used
    000327 V1.30e   a) LCD.h V1.06a used
    000323 V1.30d   a) GUIArcFloat.c included
    000323 V1.30c   a) LCD.h V1.06 used
    000229 V1.30b   a) Improved Unicode support in GUIChar.c
    000217 V1.30a   a) LCD_Color update to V1.16 (grayscale support in 8666 mode)
    000211 V1.30    a) 2 new info functions for fonts implemented
                    b) Unicode string support added
    991210 V1.28d   a) GUIChar.C: GUI_DispStringHCenter added
                    b) Compile Warnings eliminated
    991210 V1.28c   a) GUI2DGL.C splitted
    991204 V1.28b   a) GUI_Context.AWin init modified
    991203 V1.28a   a) GUI2DGL init now initializes GUI_Context.AWin
    991203 V1.28    a) LCDColor updated (support for 3bpp)
    991129 V1.26d   a) GUIChar.C update (1.20c)
    991129 V1.26c   a) GUI2DGL.C update (reg. LCD_Init)
    991110 V1.26b   a) GUIChar.h update
    991110 V1.26a   a) GUI.H: System defines (Keys etc) added
    991109 V1.26    a) GUI2DCL.C eliminated
    991018 V1.24    a) All value display routines rewritten in order to
                       support writing into a string (which is helpful
                       for other modules, like Progbar etc.)
                    b) Type cast added in GUI_GetCharDistX in order to
                       make sure characters above 128 are properly handled
    991018 V1.22b   a) LCDChar.c 1.20.02 used
    991018 V1.22a   a) LCDColor V1.12a used
    991018 V1.22    a) Support for 8666 mode (LCDColor V1.12 used)
    991015 V1.21.10 a) LCDColor.c update V1.10f
    991014 V1.21.09 a) GUI2DGL.C update 1.02.05
    991014 V1.21.08 a) GUI.h: Define for GUI_LIGHTBLUE changed
    991012 V1.21.07 a) LCDColor.c: Color translation in 8bpp mode with fixed table as default added
    991011 V1.21.06 a) LCDCOLOR.C V1.10.04 used
    991009 V1.21.05 a) new GUI2DGL.C used
    990927 V1.21.04 a) LCDColor.C: LCD_Color2Color15: Blue and red in return value swapped
    990926 V1.21.03 a) Clipping on entire region for cursor
    990921 V1.21.02 a) Add. locking support for thread safety
    990918 V1.21.00 a) New file GUITASK.C added for thread safety
    990909 V1.20.05 GUI2DCL.c: clean up
    990901 V1.20.04 Config sample changed
    990831 V1.20.02 GUIChar V1.10.01 in order to avoid compiler warnings
    990821 V1.20.01 GUI: Small changes to avoid compiler warnings            
    990821 V1.20.00 Files reorganized, GUIX, GUIFONT, GUIFONTX directories
                    created
    990821 V1.14.01 WMID.H eliminated
    990820 V1.14.00 LCDMEM4.C added
                    LCDChar.C: GUI_DispStringCenterAt added
    990810 V1.12.03 GUI.H cleanup, SampleGUIConf.h cleaned up
    990809 V1.12.02 GUIColor changed in order to ensure proper function
                    with 16-bit CPUs
    990804 v1.12.01 Some compiler warnings generated by the IAR compiler
                    eliminated, code cleaned up
    990802 V1.12.00 Font files now in seperate directory
                    LCDWIN.C --> LCDWIN.CPP, now exports a routine
                    to display the BITMAP under Windows
    990725 v1.10.00 Dynamic fonts are supported (Fontkonverter compatible)
    990720 v1.04.01 New version LCD135X.C
    990713 v1.04.00 LCD135X.C:  V1.10
                    LCDColor.C: V1.10
    990712 V1.03.05 LCD15XX.C: V1.31.01
    990709 V1.03.04 LCD15XX.C: V1.30.03
    990709 V1.03.03 LCD15XX.C: V1.30.01
    990708 V1.03.02 LCD15XX.C: V1.21.02
    990615 V1.03.01 GL_DrawArc now works with degrees
    990615 V1.03 Drawarc implemented
    990615 V1.02 New Version LCD15XX.C: 1.21
    990614 V1.01 New version of LCD15XX.C with support for Segment
                 COM lookup tables
    990610 V1.00 ** Initial version for version control purpose

    1.5    Qt for MCU介绍

    Qt官方在2018年的Embedded World上做了F429和F769的展示,但非常卡。2019年8月份的时候带来ST的F7,瑞萨的RH850和NXP的i.MX RT1050视频展示,比之前流畅了很多。

    到了2019 Qt峰会的时候,正式发布Qt for MCU V1.0。

     

     

    •  Qt for MCU视频展示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=95912

    •   Qt for MCU 收费

    https://www.qt.io/buy-product/

    1.6    Crack Storyboard介绍

    Storyboard也有一款非常优秀的GUI设计器,能够大大的加速GUI的设计,而且足够绚丽,各种仪表,工控,医疗,物联网等都能很好的支持。官方地址:https://www.cranksoftware.com/

    当前支持的厂家如下:

     

    Storyboard软件界面效果:

     

    •   Storyboard Suite 5.0视频展示

    视频效果还是比较炸的。

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=53640

    •   Storyboard收费方式

    https://www.cranksoftware.com/storyboard-pricing-licensing

    1.7    Altia GUI介绍

    Altia有将近30年的发展史,并且通过了AutomotiveSPICE汽车级HMI的一级认证,这个认证共分为6个级别,0到5级,其中第5级是最高等级。官方地址:https://www.altia.com/

     

    Altia GUI的图形开发软件更是极其强劲。有如下三款软件组成:

    (1)人机交互界面集成开发环境 — Altia Design。

     

    (2)自动代码生成工具 — Altia DeepScreen

     

    (3)在Adobe Photoshop中构建交互式用户界面资源 — Altia PhotoProto

     

    支持的硬件平台:

     

    效果展示:

     

    •   Altia GUI视频效果展示

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=30737

    •   Altia GUI收费方式

    Altia GUI也是收费软件, 具体收费方式要联系要联系他们获取。

    1.8    μGFX介绍

    μGFX也是这几年才发布的嵌入式GUI,界面效果不像TouchGFX那么华丽,不过功能也是简单实用。同样有一款不错的GUIBuilder。官方地址:http://www.ugfx.org/ 。支持的硬件平台,RTOS和显示屏驱动在这里有详细说明:http://www.ugfx.org/platforms.html ,就不单独整理出来了。

    下面贴几张μGFX实际的显示效果:

     

     

     

     

    下面是μGFX软件效果:

     

     

     

    关于μGFX的介绍就给大家说这么多,更多相关知识可以到μGFX的官网去查看。从上面的几张图可以看出,虽然μGFX界面不够华丽,但还算实用。μGFX也是要收费的,具体收费标准看这里:http://www.ugfx.org/pricing.html

    1.9    ThreadX GUIX介绍

    GUIX是微软的高级工业级GUI解决方案,专门针对深度嵌入式,实时和IoT应用程序而设计。微软还提供了名为GUIX Studio的桌面开发工具,该工具允许开发人员在桌面上设计其GUI并生成GUIX代码,然后可以将其导出到目标。

    GUIX通过了医疗认证IEC-62304 Class C,汽车认证IEC-61508 ASIL D,工业认证IEC-61508 SIL 4和运输/铁路认证EN50128。表明GUIX可用于安全关键型系统。

     

     

     

    •   ThreadX GUIX教程

    http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429

    1.10 总结

    本章主要为大家讲解了几款主流的嵌入式GUI,让大家对当前的小型嵌入式GUI有一个整体的了解,更多关于这几款GUI的知识可以上其官网进行了解和学习。

    微信公众号:armfly_com 安富莱论坛:www.armbbs.cn 安富莱淘宝:https://armfly.taobao.com
  • 相关阅读:
    DevOps实施方法论,为什么大企业一定要使用DevOps?
    SpringCloudAlibaba基础入门,基于Nacos构建分布式与配置,Sentinel服务治理
    艾编程Java进阶架构师必看:15次架构演进详解
    实战笔记:来一起探究下Kafka是如何实现万亿级海量数据的高并发写入的?
    520疯狂之后我彻底蒙了,老板让我做技术选型,数据处理选kafka还是RocketMQ?
    如何实现Redis数据持久化以及内存管理之缓存过期机制
    SpringBoot源码深度解析
    分布式缓存Redis高级应用实战:为什么要用缓存机制
    全面上云实战教程:基于阿里云安装配置部署docker详解
    Solr学习笔记(2)—— solr-7.0.0 安装与目录说明
  • 原文地址:https://www.cnblogs.com/armfly/p/14885743.html
Copyright © 2011-2022 走看看