- 源文件移植和架构
- 第一阶段
- 将lv_conf_template.h修改成lv_conf.h
- 打开lv_conf.h文件,修改条件编译指令,把#if 0修改成#if 1
- 添加定时器文件
- 按照以下结构构建文件夹:这么构建是因为lvgl的源文件包含头文件就是按照下面这种包含关系进行的,如果不这么构建,就得修改lvgl包含头文件的目录
- 第二阶段
- 把裁剪后的LVGL库文件复制到Middlewares/LVGL/GUI/lvgl路径下
- 打开工程,编译没问题后,按如下内容添加目录
- 按如下内容所示,添加相关的源文件到对应的文件中
- 第三阶段
- 添加头文件路径
- 开启c99模式
- 屏蔽MDK警告(慎用,非必须),在配置界面C/C++的Misc Controls栏中填入--diag_suppress=68,111,188,223,546,1295
- 第四阶段
- 把lv_port_disp_template.c/h的条件编译指令#if 0修改成#if 1
- 在lv_port_disp_template.c中包含输出设备的驱动头文件lcd.h
- tips:以下步骤的实现都是在lv_port_disp_init中调用实现
- 在disp_init函数中初始化屏幕设备,设置横屏
- 调用LCD_Init初始化设备屏幕
- 调用LCD_Display_Dir设置横屏(1)或者竖屏(0),
- 配置图形数据缓冲模式
- 单缓冲: 大小为屏幕像素的1/10效果比较好
- 双缓冲:一个用于输出到屏幕进行显示,另一个准备将要显示的内容,理论上会加快,但实际上V8.2版本里面,双缓冲并没有明显提高刷新率
- 全屏双缓冲:对RAM要求很高,效果也是最好)
- 设置屏幕尺寸,默认横屏
- 通过lcddev结构体获取屏幕的宽高,可以提高程序移植性
- 在disp_flush函数中配置打点函数
- 使用LCD的打点函数LCD_Color_Fill替换lvgl库中的打点函数
- 第一阶段
二、LVGL移植详细步骤--显示配置
于 2023-09-19 17:53:46 首次发布