LVGL(Light and Versatile Graphics Library,轻巧而多功能的图形库)是一个免费的开放源代码图形库,它提供创建具有易于使用的图形元素,精美的视觉效果和低内存占用的嵌入式GUI所需的一切。

LVGL主要特性

  1. 功能强大的构建块,例如按钮,图表,列表,滑块,图像等。
  2. 带有动画,抗锯齿,不透明,平滑滚动的高级图形
  3. 各种输入设备,例如触摸板,鼠标,键盘,编码器等
  4. 支持UTF-8编码的多语言
  5. 多显示器支持,如TFT,单色显示器
  6. 完全可定制的图形元素
  7. 独立于任何微控制器或显示器使用的硬件
  8. 可扩展以使用很少的内存(64 kB闪存,16 kB RAM)进行操作
  9. 操作系统,支持外部存储器和GPU,但不是必需的
  10. 单帧缓冲区操作,即使具有高级图形效果
  11. 用C语言编写,以实现最大的兼容性(与C ++兼容)
  12. 模拟器可在没有嵌入式硬件的PC上进行嵌入式GUI设计
  13. 可移植到MicroPython
  14. 可快速上手的教程、示例、主题
  15. 丰富的文档教程
  16. 在MIT许可下免费和开源

LVGL硬件要求

基本上,每个现代控制器(肯定必须要能够驱动显示器)都适合运行LVGL。LVGL的最低运行要求很低:

  • 16、32或64位微控制器或处理器
  • 最低 16 MHz 时钟频率
  • Flash/ROM::对于非常重要的组件要求 >64 kB(建议 > 180 kB)
  • RAM
    • 静态 RAM 使用量:~2 kB,取决于所使用的功能和对象类型
    • 堆栈: > 2kB(建议 > 8 kB)
    • 动态数据(堆):> 2 KB(如果使用多个对象,则建议 > 16 kB)。由 lv_conf.h 中的 LV_MEM_SIZE 宏进行设置。
    • 显示缓冲区:> “水平分辨率”像素(建议 > 10× “水平分辨率” )
    • MCU 或外部显示控制器中的一帧缓冲区
  • C99或更高版本的编译器
  • 具备基本的C(或C ++)知识:指针,结构,回调…
请注意,内存使用情况可能会因具体的体系结构、编译器和构建选项而异。

LVGL源码布局

  • ./lvgl 库本身
  • ./lv_drivers 显示和输入设备驱动程序
  • ./lv_examples 示例和演示
  • lvgl官方文档网站(https://docs.lvgl.io)
  • lvgl官方博客博客站点(https://blog.lvgl.io)
  • sim在线模拟器网站(https://sim.lvgl.io)
  • lv_sim _… 适用于各种 IDE 和平台的模拟器项目
  • lv_port _… 移植到其他开发板
  • lv_binding _… 绑定到其他语言
  • lv _…移植到其他平台
其中,lvgl,lv_examples和lv_drivers是最受维护、关注的核心存储库。

LVGL更新发行规则

  • lvgl核心存储库遵循语义版本控制规则:

    • 不兼容的API的主要版本更改。例如。 v5.0.0,v6.0.0
    • 次要版本,用于新的但向后兼容的功能。例如。 v6.1.0,v6.2.0
    • 修补程序版本,用于向后兼容的错误修复。例如。 v6.1.1,v6.1.2

LVGL仓库分支说明

核心存储库至少具有以下分支:

  • master 分支,最新版本,补丁直接在这里合并。
  • dev 分支,开发人员在此处合并新功能,直到将它们合并到 master 分支为止。
  • release/vX 分支,主要版本的稳定版本

LVGL发布周期

LVGL有2周的发布周期。在每月的第一个和第三个 星期二 :

  1. (基于新功能)从 master 分支创建 主要、次要或错误修复 的版本
  2. 将 master 分支合并到 release/vX 中
  3. 发布后立即将 dev 分支合并到 master 分支
  4. 在接下来的2周内,测试 master 分支的新功能
  5. 错误修复直接合并到 master 中
  6. 2周后,再从第一步重新开始迭代

LVGL版本标签

每个版本都会创建 vx.Y.Z 之类的标签,如: v7.9.0 。

LVGL变更日志

版本更改记录在 ./lvgl/CHANGELOG.md 中。

LVGL版本兼容

在核心存储库中,每个主要版本都有一个分支(例如 release/v6 )。该主要版本的所有次要版本和修补程序版本都在此处合并

这样就可以添加稳定的较旧版本,而无需打扰较新的版本

所有主要版本的官方支持周期为1年。

LVGL基础教程 – LVGL 简介相关推荐

  1. spyderpython使用教程_Python基础教程—Spyder简介和Python版本

    选择Spyder作为Python开发的集成开发环境(安装教程参加文末链接).它综合了开发工具的高级编辑,性能分析,调试和分析功能与数据探索等功能. 1.Spyder工作页面介绍 Spyder的界面设计 ...

  2. swoole基础教程-1.简介

    大家好,本课程是为了帮助对于swoole有兴趣的入门者能够更快的熟悉和掌握swoole,同时也是对自己学过知识的回顾和强化,同时希望通过本人的抛砖引玉,能够让更多人有所收获. 本课程的目的主要有两个: ...

  3. (一)python 基础教程——python简介

    不得不说python是一门万能语言,基本上其他语言能做的事情,python都可以以一种优雅的方式实现,这也是我一直很喜欢的python的原因. Python是著名的"龟叔"Guid ...

  4. python修改列表指定位置的_Python 基础教程—列表(1)

    Python内置了多种序列,本次讨论:列表.列表是Python提供的容器型数据类型.可变并且有序. 可变 - 列表中的每个元素的值可变,列表的长度可变,列表中的顺序可变.(支持增.删.改) 有序 - ...

  5. [转载] Python OpenCV 基础教程

    参考链接: python opencv 基础5 : putText() 为图像增加文本 Python OpenCV基础教程 文章目录 Python `OpenCV`基础教程1. 简介2. 安装3. 使 ...

  6. maya安装步骤 新手安装软件基础教程(附安装包)

    maya安装步骤 新手安装软件基础教程(简介附安装包) maya2020链接:https://pan.baidu.com/s/1MxV0GrupP32cBrDgpD1CLA 提取码:u22v 学习交流 ...

  7. 超实用的Django入门基础教程,新手必备!

    Django入门基础教程 Django简介 安装Django 虚拟环境的建立和准备工作 一.通过pycharm创建 手动创建app 迁移数据库 二.手动创建 创建一个新的文件夹 创建虚拟环境 激活虚拟 ...

  8. 学计算机基础专业必备的书,大学计算机基础教程

    大学计算机基础教程 (2017年清华大学出版社出版的图书) 语音 编辑 锁定 讨论 上传视频 <大学计算机基础教程>是2017年清华大学出版社出版的图书,作者是丛秋实.荆霞.张艳.李娅. ...

  9. 计算机网络与技术课本,高等学校计算机科学与技术教材:计算机网络基础教程...

    高等学校计算机科学与技术教材:计算机网络基础教程 语音 编辑 锁定 讨论 上传视频 <高等学校计算机科学与技术教材:计算机网络基础教程>是2003年北方交通大学出版社出版的图书,作者是张立 ...

最新文章

  1. 流网络的最小割问题c语言,「网络流24题」最小路径覆盖问题
  2. 缓存失效策略(FIFO,LRU,LFU)
  3. 递归上传文件和文件夹至SharePoint
  4. 你所不知道的ASP.NET Core MVC/WebApi基础系列(二)
  5. 计算机视觉与深度学习 | 相机抖动下的目标提取(Faster R-CNN+粒子群优化+图像配准)
  6. Angular项目打包到nginx部署过程
  7. 文件系统:使用 yum 安装软件包
  8. Git Submodule新漏洞已修复
  9. 抛物线、导弹线轨迹计算
  10. linux常用命令,亲测可用
  11. Ubuntu下录制gif动图
  12. 腾讯电脑管家怎么阻止软件自动安装
  13. 有关Android优化比较好网络资源
  14. html制作图片幻灯片效果代码,【JS+CSS3】实现带预览图幻灯片效果的示例代码
  15. Vue3动态引入图片
  16. 杨辉三角(案例演示)
  17. 齐岳|脂质体磷酸钙纳米粒RNA核糖核酸|淫羊藿苷固体纳米脂质体(ICA-SLN)修饰负载RNA核糖核酸
  18. 【TCP wrappers】关于/etc/hosts.allow /etc/hosts.deny
  19. IMX6ULL系列学习记录-sii902x移植篇
  20. Sql server没有服务器名称怎么办

热门文章

  1. java按顺序发牌_Java实现斗地主发牌功能(含按顺序发牌和玩家牌排序显示等功能)...
  2. 上班族健康 吐气如兰
  3. 喜讯!云创大数据跻身新三板创新层!
  4. 软件工程视频——可行性研究
  5. 时间序列数据趋势分析 Cox-Stuart、Mann-Kendall、Dickey-Fuller
  6. 基于GPS定位的嵌入式汽车监控器设计
  7. 打印机显示域服务器,win10打印机提示Active directory域服务当前不可用的有效解决方法...
  8. 项目管理中资源和时间紧张如何让项目正常实施
  9. 庆祝我的新浪博客升级到第十级
  10. go-tour (1)