LVGL|lvgl中文手册(lvgl中文文档教程)
lvgl官方的教程是英文的,这个是我在做项目时根据lvgl官方文档做出来的lvgl中文文档(持续更新维护),不仅仅只是生硬照搬lvgl官方文档的翻译,同时总结了我们在实际开发中遇到的各种细节,让这个文档更加适合我们在实际开发中的需求。
@
LVGL官方简介
The first version of LVGL was published on GitHub in 2016. As it usually happens it was started as a one-man project. Since then almost 100 contributors joined the development and LVGL became one of the most popular embedded graphics libraries. [1]
Nowadays LVGL is downloaded every 5 minutes and it's among the most popular C libraries on GitHub. Besides attracting thousands of users LVGL became engaging for huge companies too who offer LVGL in their ecosystem. In 2020 we established LVGL LLC to provide a solid background for the library and to develop new ways to aid UI development.[1:1]
LVGL 的第一个版本于 2016 年在 GitHub 上发布。 像一般的开源项目的那样,它是作为一个人的项目开始的。 从那时起,陆续有近 100 名贡献者参与了项目开发,使得 LVGL 逐渐成为最受欢迎的嵌入式图形库之一。
现在 LVGL 每 5 分钟就有一次下载量,她是 GitHub 上最受欢迎的 C 库之一。 除了吸引成千上万的用户之外,LVGL 还吸引了在其生态系统中的一些大公司。 2020 年,我们成立了 LVGL LLC,为库提供坚实的背景,并开发新的方法来帮助 UI 开发。
LVGL之前叫 LittlevGL,后来作者将其更名为 LVGL。
LVGL的项目作者是来自匈牙利首都布达佩斯的 Gábor Kiss-Vámosi 。Kiss 在2009年开始写 LVGL(LittlevGL),2016年将其重写并发布在 GitHub 上。
基于lvgl V7.11.0 编写的103桌面
基于 lvgl V7.11.0 该项目实现了以下功能:
- 模仿 windows10 风格的文件浏览器
- 时钟
- 二维码生成器
- 系统说明
- 温湿度采集
- 2048小游戏
- 音乐播放器
- 贪吃蛇小游戏
- 计算器
- 寄存器位查看工具
- 系统主题切换
- 板载硬件测试
源码获取:http://download.100ask.org/boards/St/100ask_stm32f103/index.html
基于lvgl V7.11.0 编写的平板桌面
该GUI基于 800x600的LCD屏幕上开发,去年就已经完成,目前已经将其lvgl库更新至lvgl最新的稳定版本 V7.11.0,点击这里查看视频演示效果。
基于 lvgl V7.11.0 该项目实现了以下功能:
- 图库
- 二维码生成器
- 文件浏览器
- 集成lvgl官方demo:图片编辑器
- 集成lvgl官方demo:音乐播放器
- 集成lvgl官方demo:打印机
- 集成lvgl官方demo:压力测试
- 2048小游戏
- TODO...
源码获取:http://download.100ask.org/boards/Nxp/100ask_imx6ull_pro/index.html
什么是LVGL
lvgl(轻巧而多功能的图形库)是一个免费的开放源代码图形库,它提供创建具有易于使用的图形元素,精美的视觉效果和低内存占用的嵌入式GUI所需的一切。
LVGL的主要特性
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 | 1.静态 RAM 使用量:~2 kB,取决于所使用的功能和对象类型- 堆栈: > 2kB(建议 > 8 kB) 2.动态数据(堆):> 2 KB(如果使用多个对象,则建议 > 16 kB)。由 lv_conf.h 中的 LV_MEM_SIZE 宏进行设置。 3.显示缓冲区:> “水平分辨率”像素(建议 > 10× “水平分辨率” ) 4.MCU 或外部显示控制器中的一帧缓冲区 |
编译器 | C99或更高版本的编译器 |
技术栈 | 具备基本的C(或C ++)知识:指针,结构,回调… |
LVGL中文手册
lvgl官方的教程是英文的,这个是我在做项目时顺便做出来的中文教程站点(持续更新维护),不仅仅只是照搬lvgl官方文档的翻译,同时总结了我们在实际开发中遇到的各种细节,让这个文档更加适合我们在实际开发中的需求。
- lvgl官方英文原版教程: https://docs.lvgl.io
- lvgl中文教程(中文手册):http://lvgl.100ask.net
LVGL|lvgl中文手册(lvgl中文文档教程)的更多相关文章
- Bootstrap 中文文档教程
Bootstrap 中文文档教程 Bootstrap 中文文档教程 全局样式和grid布局—Bootstrap中文使用指南 全局样式1.要求html5文档类型 Bootstrap使用的css属性和ht ...
- thymeleaf模板、thymeleaf语法相关中文文档教程
thymeleaf模板在SpringBoot中是默认的模范引擎技术,SpringBoot不推荐使用比较老旧的jsp.但如果您想使用jsp的话,当然也可以.我这里为您讲述thymeleaf模板的基本th ...
- velocity.js 中文文档 (教程)
velocity.js 是一个简单易用.高性能.功能丰富的轻量级JS动画库.它能和 jQuery 完美协作,并和$.animate()有相同的 API, 但它不依赖 jQuery,可单独使用. Vel ...
- Jsoup教程jsoup开发指南,jsoup中文使用手册,jsoup中文文档
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据. jsou ...
- Jsoup教程,jsoup开发指南,jsoup中文使用手册,jsoup中文文档
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据. jsou ...
- [转]Magento 2中文文档教程 - 配置和运行cron(定时任务)
本文转自:https://blog.csdn.net/xz_src/article/details/72793476 cron(定时任务)概述 Magento 2 有许多功能需要用到cron(定时任务 ...
- Magento 2中文文档教程 - Magento 2.1.x 系统需求
Magento 2.1.x 系统需求 操作系统 (Linux x86-64) Linux发行版如红帽企业Linux(RHEL),CentOS,Ubuntu,Debian,等等 内存需求 升级的应用程序 ...
- socket.io 中文手册 socket.io 中文文档
socket.io 中文手册,socket.io 中文文档转载于:http://www.cnblogs.com/xiezhengcai/p/3956401.html 服务端 io.on('connec ...
- Knockout中文开发指南(完整版API中文文档) 目录索引
a, .tree li > span { padding: 4pt; border-radius: 4px; } .tree li a { color:#46cfb0; text-decorat ...
随机推荐
- Spring中的注解@
@ResponseBody作用:@ResponseBody注解用于将Controller的方法返回的对象,通过springmvc提供的HttpMessageConverter接口转换为指定格式的数据如 ...
- js发送请求给服务端
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 桥接PyTorch和TVM
桥接PyTorch和TVM 人工智能最引人入胜的一些应用是自然语言处理.像BERT或GPT-2之类的模型及其变体,可以获住足够多的文本信息. 这些模型属于称为Transformers的神经网络类体系结 ...
- TensorRT IRNNv2Layer
TensorRT IRNNv2Layer IRNNv2Layer层实现递归层,如递归神经网络(RNN).门控递归单元(GRU)和长短期记忆(LSTM).支持的类型有RNN.GRU和LSTM.它执行一个 ...
- redis 记一次搭建高可用redis集群过程,问题解决;Node 192.168.184.133:8001 is not configured as a cluster node
------------恢复内容开始------------ 步骤 1:每台redis服务器启动之后,需要将这几台redis关联起来, 2: 关联命令启动之后 报错: Node 192.168.184 ...
- java后端知识点梳理——java基础
面向对象 java三大特性 封装: 将事务封装成一个类,达到解耦,隐藏细节的效果.通过get/set等方法,封装了内部逻辑,并保留了特定的接口与外界联系. 继承: 从一个已知的类中派生出一个新的类,新 ...
- QT环境变量设置
首先找到自己对应的目录 我的如图 还有一个路径 将这两个路径添加到系统变量的Path中
- Zabbix 4.0 使用笔记
自定义监控项1.确认需监控内容 (例如:登陆用户数)2.确认监控方法(例如:脚本)3.编写脚本 vi /etc/zabbix/custom_shell/current_login_user.sh# w ...
- 【NX二次开发】查找部件中的对象 UF_OBJ_cycle_objs_in_part
返回所有层上指定类型部件中的所有对象,不管它们的当前显示状态如何.这个例程不返回表达式.指定对象.临时(系统创建的)对象或休眠对象.休眠对象指的是从模型中删除的对象例如,如果你混合了一条边,那么这条边 ...
- 【VBS】获取文件夹大小
文件截图: 运行结果: 第一步:编写脚本 GetFloderSize.vbs 1 '获得文件夹的大小 by 王牌飞行员(https://www.cnblogs.com/KMould/p/1233481 ...