LVGL移植到6818开发板

一、移植步骤

1.lv_config.h 配置文件启动 framebuffer

2、lv_config.h 配置文件关闭SDL

2.修改main.c 去掉SDL输入设备

3.修改Makefile 文件启动交叉编译

去掉警告参数

去掉SDL库

4.交叉编译代码

bash 复制代码
make clean  #清空  ⭐ 必须要清空一次再编译! 因为修改了 lv_config.h 文件 
make -j12   #编译 

二、启动linux输入设备

cs 复制代码
/**
 * Create evdev input device.
 * @param type LV_INDEV_TYPE_POINTER or LV_INDEV_TYPE_KEYPAD
 * @param dev_path device path, e.g., /dev/input/event0
 * @return pointer to input device or NULL if opening failed
 */
lv_indev_t * lv_evdev_create(lv_indev_type_t indev_type, const char * dev_path);
indev_type:输入设备类型     
           LV_INDEV_TYPE_POINTER  触摸屏  
           LV_INDEV_TYPE_KEYPAD   键盘
           
dev_path:输入设备的路径    👉/dev/input/event0  开发板触摸屏驱动 
返回值:成功  输入设备指针 
       失败   NULL

//坐标校准函数   
void lv_evdev_set_calibration(lv_indev_t * indev, int min_x, int min_y, int max_x, int max_y);
indev:需要校准的输入设备 
min_x:X 轴最小值 
min_y:Y 轴最小值
max_x:X 轴最大值 
max_y:Y 轴最大值           

开启demo例子

bash 复制代码
// 创建触摸屏输入设备
lv_indev_t * touch = lv_evdev_create(LV_INDEV_TYPE_POINTER, "/dev/input/event0");
// 校准触摸屏坐标 黑色屏幕
lv_evdev_set_calibration(touch, 0, 0, 1024, 600);

调用以上两个接口+在例子里找一个按钮接口试试

可以在6818开发板运行并可以点击触摸屏即成功!

至此,希望看完这篇文章的你有所收获,我是Bardb,译音八分贝,道友,下期见!

相关推荐
code monkey.27 分钟前
【Linux之旅】Linux 应用层自定义协议与序列化:从粘包问题到网络计算器
linux·网络·c++
草莓熊Lotso30 分钟前
【Linux网络】深入理解 HTTP 协议(二):从协议格式到手写工业级 HTTP 服务器
linux·运维·服务器·网络·c++·http
剑神一笑7 小时前
Linux pgrep 命令详解:按名称查找进程 PID 的高效方法
linux·运维·chrome
剑神一笑7 小时前
Linux killall 命令详解:按进程名批量终止进程的原理与实践
linux·运维·chrome
日取其半万世不竭11 小时前
iftop、nethogs 和 nload:Linux 服务器网络流量实时监控工具介绍
linux·运维·服务器
mounter62512 小时前
Linux 内核资源管理:控制组(cgroup)的演进与“策略组”新提案
linux·运维·服务器·cgroup·kernel
bksczm12 小时前
文件在磁盘中的存储方式
linux·运维·服务器
L16247612 小时前
OpenSSH 半自动升级方案(独立编译 + 手动迁移 + 重建 systemd 服务)
linux·服务器·ssh
半旧夜夏12 小时前
【保姆级】微服务组件环境搭建(Docker Compose版)
java·linux·spring cloud·微服务·云原生·容器
爱莉希雅&&&13 小时前
zabbix快速搭建和使用
android·linux·数据库·zabbix·监控