| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 常用GUI整理介绍 -> 正文阅读 |
|
[嵌入式]常用GUI整理介绍 |
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。 图形用户界面是一种人与计算机通信的界面显示格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。与通过键盘输入文本或字符命令来完成例行任务的字符界面相比,图形用户界面有许多优点。图形用户界面由窗口、下拉菜单、对话框及其相应的控制机制构成,在各种新式应用程序中都是标准化的,即相同的操作总是以同样的方式来完成,在图形用户界面,用户看到和操作的都是图形对象,应用的是计算机图形学的技术。 1?emWinEmWin官网网址: https://www.segger.com/products/user-interface/emwin/ 1.1 emWin简介 emWin是由德国SEGGER公司开发,可为图形LCD设计提供高级支持,极大简化了LCD设计。为恩智浦ARM微控制器用户免费提供的emWin图形库。在国内做嵌入式系统的大部分都使用emwins 其简单来说是图形库,做电子硬件开发,常常要为设计一个良好的UI伤透脑筋,写很多的代码也不尽人意,还要不断调试,emwin正是解决这种用户界面需求的图形库,只要在你的设计中嵌入这种图形库,就能很方便使用里面的模块化设计,既能提高设计界面图形质量,还大大的减少开发时间。 1.2 emWin特点
1.3?知识拓展 emWin和STemWin、μCGUI的关系: 简单的说:STemWin和μCGUI都是由emWin发展而来。 ? STemWin由SEGGER公司授权给ST(意法半导体),使用ST芯片的用户可以免费使用STemWin。同时,还针对ST的微控制器做了专门的优化,比如在使用STM32F4带FPU的芯片时,STemWin在需要浮点处理的地方专门做了优化。 说起μCGUI,相信大家都知道μCOS,都属于Micrium公司。μCGUI是SEGGER公司授权给Micrium公司,并为其定制的一套图形软件库。 总而言之,uC/GUI 和 STemWin 都是 Segger 公司的 emWin 产品。 2 TouchGFX 官网地址: https://www.touchgfx.com.cn/i.php https://www.st.com/content/st_com/en/stm32-graphic-user-interface.html 2.1 TouchGFX简介 TouchGFX属于Draupner Graphics公司的GUI产品,在去年(2018年7月),TouchGFX被ST收购,在STM32上可以免费使用TouchGFX。TouchGFX升级至V4.10,扩展STM32生态系统,并集成在STM32CubeMX中。 3 MiniGUI官网网址:http://www.minigui.com ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?图 3.1 MiniGUI功能图 MiniGUI是一款国产GUI,一款面向嵌入式系统的高级窗口系统和图形用户界面(GUI)支持系统,由魏永明先生于1998年底开始开发。2002 年,魏永明先生创建北京飞漫软件技术有限公司,为MiniGUI 提供商业技术支持,同时也继续提供开源版本,飞漫软件是中国地区为开源社区贡献代码最多的软件企业。 MiniGUI技术优势和其它针对嵌入式产品的图形系统相比,MiniGUI 在对系统的需求上具有如下几大优势:
2019年9月19日,北京飞漫软件技术有限公司宣布:将在 MiniGUI 4.0.2 版本中支持国产物联网操作系统 RT-Thread! 4 Qt官网网址:?https://www.qt.io 4.1 QT简介 想必学习嵌入式开发的,都应该知道Qt,Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。 Qt for MCUs的主要优势: (1)可复用您在微控制器上的现有技能; (2)通过跨设备(从高端到大众设备)的技术一致性,来降低维护成本; (3)在不影响图形性能的前提下,向微控制器演进以降低硬件成本; (4)将传统解决方案升级到现代的跨平台图形工具包; Qt商业和开源版差异如图4.1.1所示。 ? 图4.1.1 Qt商业和开源版差异 Qt for MCUs参考网址: https://resources.qt.io/cn/the-qt-company-introduces-qt-for-mcus 5?LittlevGL文档:https://docs.littlevgl.com/en/html/index.html GitHub:https://github.com/littlevgl/lvgl 5.1?LittlevGL简介 LittlevGL 项目作者是来自匈牙利首都布达佩斯的?Gábor Kiss-Vámosi?。Kiss 在2009年开始写 LittlevGL,2016年将其重写并发布在 GitHub 上。 5.2?LittlevGL特点 (1)LittlevGL是一个免费的开源图形库,提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素、漂亮的视觉效果和低内存占用。 (2)LittlevGL 以 C 语言编写,支持 OS,内存占用低(16K RAM,64K Flash); (3)LittlevGL 自带了丰富的控件:窗口、按键、标签、列表、图表等,还可以自定义控件; 支持很多特效:透明、阴影、自动显示隐藏滚动条、界面切换动画、图标打开关闭动画、平滑的拖拽控件、分层显示、反锯齿、仅耗少量内存的字体等等。 6 AWTK官网网址:https://www.zlg.cn/news/news/news_detail/id/52.html 6.1 AWTK简介 AWTK全称Toolkit AnyWhere,是ZLG开发的开源GUI引擎,旨在为嵌入式系统、WEB、各种小程序、手机和PC打造的通用GUI引擎,为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的GUI引擎。 6.2 AWTK特点 (1)开源免费,使用无拘束; (2)支持纯 C 语言编程,使用无门槛; (3)小巧高效,最小仅需 8K RAM+32K FLASH,可运行在 Cortex-M3 等小资源平台; (4)拥有完善的动画系统,半透明填充和贴图,支持硬件加速,轻松做出炫酷流畅的界面效果; (5)丰富的 GUI 控件,提供窗口、对话框和各种常用的控件,并内置多种动画效果; (6)支持位图字体和矢量字体,可加载标准的 TTF 字体文件; (7)内置中英文输入法,并支持智能词组输入; (8)支持 XML 进行界面布局,主题和样式表技术,轻松实现界面换肤; (9)支持视网膜高清分辨率技术,配合高清屏可呈现平滑细腻的图形和文字。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 23:21:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |