1.软文推荐

2.软文推荐

3.软文推荐

1、littleVGL 介绍

littleVGL 是近几年开始流行的一个小型开源嵌入式 GUI 库,具有界面精美,消耗资源小,可移植度高,响应式布局等特点,全库采用纯 c 语言开发,而且 littleVGL 库的更新速度非常快,随着 littleVGL 的认知度越来越大,官方资料也逐渐丰富起来。

相比 emWin,littleVGL 的图形效果更好,当然,对 MCU 的要求要比 emWin 要高,大家根据 MCU 的资源情况进行选择。

littleVGL 的官方网址

https://littlevgl.com

littleVGL 的 github 网址

https://github.com/littlevgl/lvgl

littleVGL 的在线文档网址

https://docs.littlevgl.com/zh-CN/html/index.html
2、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 以上的容量
RAM: SRAM: 大约 8 到 16 kB,这取决于你所用的组件功能和 objects 控件对象类型; 栈: 至少为 2Kb,一般推荐值为 4kB; 动态数据(堆): 至少 4kB,如果你用到了多个或多种控件的话,那么最好设置为 16kB 以上,这个是可以通过 lv_conf.h 配置文件中的 LV_MEM_SIZE 宏来定义的; 显示缓冲区: 至少要比”水平分辨率像素”要大,一般推介值为 10 倍的”水平分辨率像素”,取个例子,假如我们屏幕的水平分辨率为480个像素,采用16位的颜色深度进行显示,即一个像素占 2 个字节,那么推介的显示缓冲区大小为 104802=9600 个字节
C99 或更新的编译器,如果是用 keil 开发的话,一定得勾选”c99”模式,否则编译会报错的
基本的 c(或者 c++)语言知识,如:指针,结构体,回调函数
图片
已经支持的平台

LVGL 本身并不依赖特定的硬件平台,任何满足 LVGL 硬件配置要求的微控制器均可运行 LVGL。如下仅列举其中一部分:

NXP: Kinetis, LPC, iMX, iMX RT
STM32F1, STM32F3, STM32F4, STM32F7, STM32L4, STM32L5, STM32H7
Microchip dsPIC33, PIC24, PIC32MX, PIC32MZ
Linux frame buffer (/dev/fb)
Raspberry Pi
Espressif ESP32
Infineon Aurix
Nordic NRF52 Bluetooth modules
Quectel modems

LVGL也支持:

Arduino library
PlatformIO package
Zephyr library
ESP32 component
NXP MCUXpresso component
NuttX library
RT-Thread RTOS

官方效果图

图片
3、littleVGL 移植到 STM32F103

移植教程正点原子有做过,全套资源如下

链接:https://pan.baidu.com/s/1-7RFskvZifndQUSzQ4D92Q 提取码:zdyz

链接失效的话来这里:

http://www.openedv.com/docs/

图片

教程写的很好,大家可以参照移植,玩起来!

本文来源:www.lxlinux.net/10381.html,若引用不当,请联系修改。

相关文章 8

1

无理由退款(快手小黄车如何关闭7天无理由退款) 2分钟前

目录:1、七天无理由退换货是什么意思2、7天无理由退货的条件3、网购无理由退货规定?七天无理由退换货是什么意思 【法律分析】:七天...

2

怎样在 Ubuntu 中修改默认程序 4分钟前

作为一个新手,你需要知道如何在 Ubuntu 中修改任何默认程序,这也是我今天在这篇指南中所要讲的。 对于我来说,安装 VLC 多媒体播放器是...

3

远程登录日志(Windows远程登录日志) 5分钟前

目录:1、Windows Server 2008怎么查看远程桌面登录日志2、Win7系统怎么查看远程连接登录记录3、Windows服务器远程登录日志查询方法,linux查看登...

4

Linux中防止SYN Flood攻击具体方法 7分钟前

SYN Flood (SYN洪水) 是种典型的DoS (Denial of Service,拒绝服务) 攻击。效果就是服务器TCP连接资源耗尽,停止响应正常的TCP连接请求。 如果您遭受...

5

云桌面优势(云桌面的优势) 9分钟前

目录:1、云桌面是什么?使用云桌面有什么好处吗?2、云桌面是什么?云桌面有哪些优势?3、企业云桌面虚拟化办公的优势??4、云桌面...

6

讲解一下CQRS模式学习 10分钟前

由于存在增删改与查询逻辑有差异的这个问题,为了更好的针对差异进行抽象,我们可以将它们分开进行设计。也就是我们的CQRS模式,即命...

7

阿里云测速工具(阿里云测速工具在哪里) 11分钟前

目录:1、阿里云服务器ECS如何选择?性能测试PTS助你测试和选择阿里云服务器2、测速网中的云测速点是什么意思3、NetCat使用介绍4、腾讯云...

8

Linux系统同步时间命令 14分钟前

当我们在Linux系统中搭建集群时特别是分布式系统,时间是非常重要的因素,,例如HBASE的时候,确保时间一致性,否则hmaster会感知不到Hr...