LVGL(轻量级和通用图形库)是一个免费和开源的图形库,它提供了创建嵌入式 GUI 所需的一切,具有易于使用的图形元素、美丽的视觉效果和低内存占用。
主要特性
- 丰富且强大的模块化图形组件:按钮、图标、列表、互动条、图片等
- 先进的图形界面:动画、抗锯齿、透明度、平滑滚动等效果
- 支持不同的输入设备,包括键盘、鼠标、触摸屏、编码器等
- UTF-8编码支持多语言
- 多显示器支持,可以同时使用多个TFT或单色显示
- 可以通过类CSS的方式来设计、布局图形界面
- 不限制芯片类型、硬件,可在各种微控制器或显示器上使用LVGL
- 配置可裁剪(最低资源占用:64 KB Flash,16 KB RAM)
- 支持操作系统、外部存储和GPU,但都不是硬性要求
- 即使单缓冲区(frame buffer)也能实现高级图形效果
- 不需要嵌入式硬件环境,在PC模拟器上也可以调试GUI
- 支持 Micropython 编程
- 有用于快速GUI设计的教程、示例、主题
- 详尽的文档以及 API 参考手册,可线上查阅或可下载为 PDF 格式
- 在 MIT 许可下免费和开源
配置要求
- 16、32或64位微控制器或处理器
- 最低 16 MHz 时钟频率
- Flash/ROM: >64 KB(建议 180 KB)
- RAM: 8 KB(建议 24 KB)
- 显示缓冲区: >水平分辨率像素(建议为1/10屏幕大小)
- 支持C99编程
- 具备基本的C或C++知识