你是否也曾被ESP32的显示开发折磨到“头秃”?环境配置报错、LVGL移植失败、屏幕死活不亮……无数个小时在调试中白白浪费。
别担心,这篇指南就是你的“速救手册”。我们将跳过所有繁琐的坑,直击核心,让你在最短时间内,亲眼看到LVGL界面在启明智显ESP32-S3 2.8寸屏上流畅运行。无需痛苦的摸索,跟着我们的步骤,从零到一,全程畅通无阻。
搭建ESP-IDF环境
1. 输入以下代码更新软件包:sudo apt-get update

2. 输入以下代码安装esp-idf环境依赖包:
sudo apt-get install git wget flex bison gperf python3-pip python3-venv cmake
ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 net-tools)

3. 创建存放idf的⽂件夹,路径可以⾃⼰选择(mkdir esp cd esp)
4. 进行换源(此操作只需国内⽤户进⾏,国外⽤户请忽略),拉取gitee⼯具

5. 输入代码cd esp-gitee-tools执⾏gitee⼯具切换镜像脚本

6. 更换pip源,拉取esp-idf源码:
cd .. git clone --recursive https://github.com/espressif/esp-idf.git

7. 切换esp-idf版本分⽀到v5.1
8.安装编译⼯具

9.设置环境变量并将环境变量放到.bashrc中,验证esp-idf环境

下载启明SDK
1. 输入以下代码拉取源码,该拉取流程中已集成 LVGL demo 相关资源:git clone https://gitee.com/qiming-zhixian/qmsd-esp32-bsp.git
2. 进⼊示例目录,输入以下代码选择开发板类型:idf.py load-board,以ZX2D80CE02S这款产品为例,键盘输⼊2,回车等待系统配置完成
3.编译工程 idf.py build4. 打包固件 idf.py generate-firmware 会⽣成⼀个firmware_0x0.bin⽂件,将打包的固件复制到桌面上
烧录
1.输入以下网址进入官网下载烧录工具,点击Download,选择flash Download Tool进行下载:
https://www.espressif.com/zh-hans/support/download/other-tools

2. 打开烧录工具,ZX2D80CE02S选择类型为ESP32-S3 ,点击ok

3. 选择需要烧录的固件,目标地址为0x0.选择目标端口号
4. 点击START开始烧录
一移植LVGL官方例程到qmsd
1. 输入qmsd的示例get-start,我们的修改将基于get-start进行

2. 新建自定义组件目录,输入代码mkdir components获取LVGL8.10.0源代码

3.解压后进⼊此目录下将其复制到widgets目录下

4. 编写CMakeLists.txt使程序加⼊构建系统
idf_component_register(
SRC_DIRS .
INCLUDE_DIRS .
REQUIRES ui_engine)

5. 修改复制的⽂件,使其适配qmsd
6. 修改mian.c,在app_main(Void)中添加以下代码开启GUI刷新任务

7. 输入以下配置代码将屏幕变为横屏

8. 选择开发板类型(选择开发板时出错可以尝试将启明SD添加进环境变量),开始编译

9. 编译失败,此次失败原因是芯片内部 32KB 内存不足,需修改配置

10.再次编译,再次打包固件并复制到桌面上替换,按照之前的烧录步骤再次烧录
本地代码合成
1. 编写⼀个串口初始化函数
2. 修改main_app(Void)
3. 创建⼀个串口接收线程
4. 修改LVGL界⾯
跟着这份指南一步步操作,相信你已经成功点亮了屏幕,并看到了属于自己的LVGL界面。这不仅是代码的成功运行,更是你攻克嵌入式UI开发难题的坚实一步。
如果在实践中遇到任何问题,或者成功做出了炫酷的效果,欢迎在评论区分享你的成果与经验——你的真实经历,就是帮助其他开发者最宝贵的力量。
-
串口屏
+关注
关注
8文章
604浏览量
39268 -
ESP32
+关注
关注
24文章
1090浏览量
20929 -
LVGL
+关注
关注
2文章
116浏览量
4296
发布评论请先 登录
【汇总篇】小草手把手教你 LabVIEW 串口仪器控制
《嵌入式 - STM32开发指南》手把手教你搭建STM32开发环境 [Windows版 - 3]
《嵌入式 - STM32开发指南》手把手教你搭建STM32开发环境 [Linux版 - 3]
基于ESP32-S3的4.6寸长条串口屏方案
合宙ESP32-S3开发板特性解读
启明云端ESP32-S3 2.8寸串口屏到手了?如何上手?看这篇!
快速上手!带你用LVGL工具完成乐鑫科技ESP32-S3 2.8寸串口屏UI开发!代码完全开源!
低成本开源!用乐鑫科技ESP32-S3开发板轻松驱动无刷电机,保姆级教程来了!
【迅为RK3568开发板NPU实战】别再闲置你的NPU!手把手教你玩转RKNN-Toolkit2 的使用

LVGL实战指南:手把手教你玩转ESP32-S3 2.8寸串口屏UI开发
评论