LVGL
LVGL概述
LVGL的资料目前不算太多,主要参考资料如下
LVGL介绍
LVGL全称Light and Versatile Graphics Library,是一个自由的,开源的GUI库,界面精美,资源消耗小,可移植度高,响应式布局等特点,全库采用纯 c 语言开发.
主要特性如下.
- 具有非常丰富的内置控件,像 buttons, charts, lists, sliders, images 等
- 高级图形效果:动画,反锯齿,透明度,平滑滚动
- 支持多种输入设备,像 touchpad, mouse, keyboard, encoder 等
- 支持多语言的 UTF-8 编码
- 支持多个和多种显示设备,例如同步显示在多个彩色屏或单色屏上
- 完全自定制的图形元素
- 硬件独立于任何微控制器或显示器
- 可以缩小到最小内存 (64 kB Flash, 16 kB RAM)
- 支持操作系统、外部储存和 GPU(非必须)
- 仅仅单个帧缓冲设备就可以呈现高级视觉特效
- 使用 C 编写以获得最大兼容性(兼容 C++)
- 支持 PC 模拟器
- 为加速 GUI 设计,提供教程,案例和主题,支持响应式布局
- 提供了在线和离线文档
- 基于自由和开源的 MIT 协议
- 支持MicroPython
备注:LVGL每一个大版本之间都不兼容.以上仅特性针对V6版本
资源需求
想要流畅的运行LVGL,最低要求如下.
- 16、32或者64位的微控制器或处理器.
- 推荐大于16MHz时钟速度
- Flash/ROM : 最小64KB,推荐大于180KB
- RAM :
- 静态RAM使用 :根据使用的特性和对象类型大约8-16KB
- Statck : 最少大于2KB,推荐大于4KB
- Dynamic data(heap) : 最少大于4KB,如果使用several objects 最少大于16kB
- 显示缓存 : 至少大于“水平分辨率像素”,推荐大于10倍的“水平分辨率像素”
- C99或者更新的编译器
- 基础的C语言知识,如:指针,回调,结构体等.
LVGL许可证
LVGL采用MIT license.