LVGL的初步了解以及移植到STM32

LVGL是一个流行的免费开源图形库,适用于各种MCU和显示器。文章介绍了LVGL的源码下载、移植要求,包括对处理器速度、内存和帧缓冲的要求。优化LVGL运行效果的方法包括提高芯片速度和增大内存。移植过程涉及确定输入输出设备、裁剪库文件和配置设备。此外,还详细阐述了在正点原子平台上的移植步骤以及与FreeRTOS的集成。
摘要由CSDN通过智能技术生成

1、LVGL简介

        LVGL是最受欢迎的免费开源嵌入式图形库,可为任何MCU、MPU和显示器类型创建漂亮的用户界面。使用SquareLine工作室,使用拖放UI编辑器来简化开发。

1.1、LVGL源码下载

lvgl 在github 上的开源代码

https://github.com/lvgl/lvgl

下载的源码包里面所有的        

1.2、LVGL移植要求

  • 16、32或64位微控制器或处理器
  • 建议速度大于16 MHz
  • 闪存/ROM: > 64 kB(建议180 kB)
  • 内存:8 kB(建议24 kB)
  • 1个帧缓冲器:在MCU、外部RAM或显示控制器中
  • LVGL的图形缓冲:>“水平分辨率”像素(推荐1/10“屏幕尺寸”)
  • C99或更新的编译器
  • 基本的C(或C++)知识:指针、结构、回调

优化LVL运行效果的方法

  • 提高芯片主频
  • 增大SRAM容量、提供读写速度
  • 增大图像缓冲区、使用双缓冲
  • 减少需要刷新的总像素
  • 提高图像数据的传输速度

关键点:缩短图像刷新所需要的时间

1.3、LVGL的移植裁剪

最开始下载下来的源码如下所示,我们需要将不需要的文件进行删除

 将图中选择的文件进行删除

 在删除demos中除porting(接口)文件的其他文件

 下图就是一个精简的移植包

1.3.1、 LVGL移植的所需知

显示(屏幕)                 输入设备                   操作系统                 内存(SRAM、Flash)

第一个是必要的,后三者是选择性使用(使用到才配做)

1.3.2、LVGL移植流程

  1. 确定输入、输出设备(输入:触摸屏、鼠标、键盘以及编码器        输出:显示器)
  2. 确定所需的可选功能(屏幕数据传输方式、系统、SRAM内存管理算法)
  3. 坐标LVGL库、例程(准备所需版本的LVGL文件)
  4. 添加LVGL库到工程(按需裁剪LVGL文件,并添加到工程当中)
  5. 配置输入、输出设备(适配自己的输入和输出设备,添加所需功能)
  6. 提高心跳、测试(为LVGL提高时基,写测试代码检测移植是否成功)

 1.4、LVGL移植(正点原子的LVGL)

移植步骤1

 步骤2

 步骤3

步骤4 

步骤5

步骤6 

 步骤7:提高时基(心跳)

 步骤8:main函数部分

        到这里基本上就完成了一个基础的LVGL移植了,从中基本上了解了如何移植LVGL,下面则是关于RTOS、外部SRAM、内存管理的移植。 

1.5、LVGL关于FreRTOS的移植

步骤1

 步骤2:

 步骤3:

步骤4:

拓展知识点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啵啵520520

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值