ESP32C3 添加lvgl组件
最近使用ESP32C3开发红外热成像,需要使用st7735s,就准备使用lvgl作为gui,
其实以前是添加过lvgl的,这次新建工程,发现添加lvgl失败,还是做一下记录,方便以后添加
开发环境:ubuntu22.04,git,vscode,esp-idf
esp32c3新建helloworld工程
esp32c3新建工程有两个方法,
- 直接从esp-idf中的
examples/get-started/hello_world
文件夹中直接复制 - 在vscode中使用快捷方式新建工程
添加LVGL
esp32c3添加lvgl可以参考[csdn](https://blog.csdn.net/weixin_43808708/article/details/121348740)
1.git添加lvgl代码
在component文件夹中运行指令git submodule add -b release/v8.1 https://github.com/lvgl/lvgl.git
2.git添加lvgl_esp32_drivers
在component文件夹中运行指令git submodule add https://github.com/lvgl/lvgl_esp32_drivers.git
3.esp32工程中cmake中添加编译选项
在Cmakelists.txt中添加两行代码
4.编译之后出现错误
lv_meter
1
error: #error "lv_meter: Complex drawing is required. Enable it in lv_conf.h (LV_USE_DRAW_MASKS 1)"
不能直接使用lvgl的master分支,所以需要切换到release分支
LV_HOR_RES_MAX/LV_VER_RES_MAX 没有定义
SPI_HOST_MAX没有定义
添加ST7735S
添加lvgl_esp32_drivers之后,直接编译即可,可能会出现显示不全的问题,是因为st7735的显示偏移需要调节
在st7735s.h中修改
1 | #define COLSTART 2 |