littleVGL可以说是这2年才刚开始流行的一个小型开源嵌入式GUI库,具有界面精美,消耗资源小,可移植度高,响应式布局等特点,全库采用纯C语言开发。笔者打算学习他的原因可以用一个字概括:帅。 笔者曾用EMWIN图形界面做项目,由于没有太多时间耗费在GUI界面的制作上,最后的作品界面只能算是凑合,科技感较为欠缺,简言之就是B格不够。看到littleVGL的官方效果图后,就被吸引了。 littleVGL的主要特性: • 具有非常丰富的内置控件,像 buttons, charts, lists, sliders, images 等 • 高级图形效果:动画,反锯齿,透明度,平滑滚动 • 支持多种输入设备,像 touchpad, mouse, keyboard, encoder 等 • 支持多语言的 UTF-8 编码 • 支持多个和多种显示设备,例如同步显示在多个彩色屏或单色屏上 • 完全自定制的图形元素 • 硬件独立于任何微控制器或显示器 • 可以缩小到最小内存 (64 kB Flash, 16 kB RAM) • 支持操作系统、外部储存和 GPU(非必须) • 仅仅单个帧缓冲设备就可以呈现高级视觉特效 • 使用 C 编写以获得最大兼容性(兼容 C++) • 支持 PC 模拟器 • 为加速 GUI 设计,提供教程,案例和主题,支持响应式布局 • 提供了在线和离线文档 • 基于自由和开源的 MIT 协议
littleVGL的要求如下: • 16、 32 或 64 位的单片机(微控制器)或处理器 • 微处理器的主频最好高于 16MHZ • Flash/ROM:如果只用 littleVGL 核心组件的话,则至少需要 64kB 的容量,如果想完整使用的话,最好保证 180kB 以上的容量 • C99 或更新的编译器,如果是用 keil 开发的话,一定得勾选”c99”模式,否则编译会报错的
官方网站: littleVGL 的官方网址为: https://littlevgl.com littleVGL 的 github 网址为: https://github.com/littlevgl/lvgl littleVGL 的在线文档网址为: https://docs.littlevgl.com/zh-CN/html/index.html
笔者用正点原子的STM32F407开发板试跑了一下官方例程,效果如下: 本文仅作简要介绍以及官方例程的演示,之后的文章将正式进入我们的学习笔记内容。