完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#01 LVGL是什么LVGL的作者是来自匈牙利的Gabor Kiss-Vamosikisvegabor,LVGL用C语言编写,以实现最大的兼容性(与C ++兼容),模拟器可在没有嵌入式硬件的PC上启动嵌入式GUI设计,同时LVGL作为一个图形库,它自带着接近三十多种小工具可以供开发者使用。这些强大的构建块按钮搭配上带有非常丝滑的动画以及可以做到平滑滚动的高级图形,同时兼具着不高的配置要求以及开源属性,显著的优势使得LVGL蔚然成风,成为广大开发者在选择GUI时的第一选择。
主要特性
配置要求基本上,每个能够驱动显示器的现代控制器都适合运行 LVGL。最低要求是:
系统框架LVGL本身是一个图形库。 我们的应用程序通过调用LVGL库来创建GUI。它包含一个HAL(硬件抽象层)接口,用于注册显示和输入设备驱动程序。驱动程序除特定的驱动程序外,它还有其他的功能,可驱动显示器GPU、读取触摸板或按钮的输入。 MCU有两种典型的硬件设置。一个带有内置LCD/TFT驱动器的外围设备,而另一种是没有内置LCD/TFT驱动器的外围设备。相同的是,这两种情况都需要一个帧缓冲区来存储屏幕的当前图像。 集成了TFT/LCD驱动器的MCU如果MCU集成了TFT/LCD驱动器外围设备,则可以直接通过RGB接口连接显示器。在这种情况下,帧缓冲区可以位于内部RAM(如果MCU有足够的RAM)中,也可以位于外部RAM(如果MCU具有存储器接口)中。 如果MCU没有集成TFT/LCD驱动程序接口,则必须使用外部显示控制器(例如SSD1963、SSD1306、ILI9341 )。在这种情况下,MCU可以通过并行端口,SPI或通过I2C与显示控制器进行通信。帧缓冲区通常位于显示控制器中,从而为MCU节省了大量RAM。 #02 常见GUI对比早些年间大部分MCU的资源和处理能力有限,受制于资源以及处理能力的不足,很少有基于MCU通用的GUI。 现如今,随着MCU技术的发展,MCU性能以及属性有了很大改变,相较从前,现在MCU资源增加,处理能力增强,市场需求增长,GUI的功能自然也越来越丰富了。 LVGLLVGL集成了占用小、多平台使用、移植简单、操作简单、开源免费等一系列特点。对于使用者来说,LVGL拥有30多个可以随时使用的小部件的同时,甚至还可以自定义控件。 LVGL经常被使用在MCU级别的设备上,因其可以在多平台上移植使用以及在不同显示器上,以C编写,对于资源紧张的MCU来说十分适合。 MiniGUIMiniGUI 是一款面向嵌入式系统的高级窗口系统和图形用户界面支持系统,遵循GPL协议。作为操作系统和应用程序之间的一个中间件,MiniGUI 将底层操作系统和硬件平台的细节隐藏起来,并为上层的应用程序提供了一致接口。 MiniGUI同时具有多种技术特性,包括可在含有MMU的32位处理器架构之上运行;同时支持低端、高端显示设备以及具备副屏支持的功能;方便为不同操作系统和环境应运而生的三种运行模式以及内建资源的支持;嵌入式应用程序开发和调试的跨操作系统支持的属性;完备的多窗口机制和消息传递机制。
Qt(Qt for MCUs)Qt for MCUs是一个完整的图形框架和工具包,包含在微控制器上设置、开发和部署GUI所需要的一切。您可以在裸机或实时操作系统上运行应用程序。 Qt for MCUs带有三样开发工具,包括一个配备了完善的代码编辑器、版本控制等功能的IDE(Qt Creator);以Qt QML语言编写的帮助从头开始或基于咸亨UI空间快速设计和构建应用程序的组件WYS|WYG编辑器(Qt Quick Designer);Qt Quick Ultralite 图形框架提供了丰富的 QML API 集,用于构建流畅的 GUI 和渲染引擎。 优点
emWin与单任务和多任务环境兼容,可以使用专有的操作系统,也可以与任何商业RTOS兼容。它以C语言源代码提供,使其成为嵌入式市场的专业、通用GUI,可用于多种不同的场景。 优点
#03 D1哪吒 & LVGL轻量的属性给LVGL带来了无数粉丝,在使用各种低配置的小型开发板时,大部分开发者都会第一时间想到LVGL,这同时又突出展现出了它的另一个特点易移植。 同样是开源、精简、轻量级,RISC-V和LVGL在设计理念上简直不谋而合,他们或许就代表着未来十年科技发展的主流。 目前,全志基于阿里平头哥C906核设计的RISC-V芯片已经支持LVGL。秉承着同样设计理念的两个网红黑科技,在全志的芯片上绽放出了奇妙的花火。 在全志在线社区william hill官网 上,有小伙伴发布了一篇将LVGL移植到哪吒D1上的帖子,一时也是引起广泛讨论 原帖&效果视频见链接: 哪吒D1开发板 LVGL7 源码下载(带git仓库)bbs.aw-ol.com/topic/303/ 视频中使用的是D1哪吒开发板,配上一块带触摸的7寸MIPI屏幕。可以看到移植的LVGL DEMO在RISC-V指令集的芯片上丝滑运行,毫无压力。 原帖&效果视频见链接: 【DIY教程】D1的双屏异显第一弹来啦!D1同时支持两个屏幕,一共做UI交互,一边个播放视频bbs.aw-ol.com/topic/362/ 借助芯片的双屏异显功能,D1可以一边用LVGL做UI交互,另一边又在解码播放视频,很好的解决追剧星人在追剧时候就难以同时操作的问题,不会占用HDMI屏幕输出需要太多资源的同时,LVGL也很好的帮助了屏幕内容在mipi上的丝滑输出,成功实现双屏异显。 而要在哪吒上把LVGL玩起来也非常简单,只需要下载源码后使用编译命令编译源码: CC=/xxxx/prebuilt/gcc/linux-x86/riscv/toolchain-thead-glibc/riscv64-glibc-gcc-thead_20200702/bin/riscv64-unknown-linux-gnu-gcc make 然后使用tina Linux自带的adb 将demo推到开发板里,就可以玩起来了。如果没有MIPI屏幕,使用HDMI显示器+鼠标也是同样支持的。 |
|
|
|
只有小组成员才能发言,加入小组>>
909 浏览 0 评论
693 浏览 0 评论
821 浏览 0 评论
全志T113双核异构处理器的使用基于Tina Linux5.0——RTOS系统定制开发
1499 浏览 0 评论
全志T113双核异构处理器的使用基于Tina Linux5.0——RTOS编译开发说明
902 浏览 0 评论
全志V85x硬件设计大赛作品精选第二期,快来Pick你心目中的最佳方案
94720浏览 3评论
2874浏览 1评论
5154浏览 1评论
Yuzuki Lizard 全志V851S开发板 –移植 QT5.12.9教程
16446浏览 1评论
关于全志T113开发板接7寸LCD屏幕显示异常问题的解决方案
1164浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-14 09:18 , Processed in 0.553744 second(s), Total 36, Slave 29 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号