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,译音八分贝,道友,下期见!

相关推荐
浅时光_c3 小时前
3 shell脚本编程
linux·开发语言·bash
Lucis__4 小时前
一文读懂TCP通信机制:基于相关API构建可靠性连接
linux·网络·tcp/ip
_深海凉_4 小时前
LeetCode热题100-有效的括号
linux·算法·leetcode
零号全栈寒江独钓6 小时前
基于c/c++实现linux/windows跨平台获取ntp网络时间戳
linux·c语言·c++·windows
左手厨刀右手茼蒿6 小时前
Linux 内核中的进程管理:从创建到终止
linux·嵌入式·系统内核
geinvse_seg6 小时前
中小团队如何低成本搭建项目管理系统?基于 Ubuntu 的 Dootask 私有化部署实战
linux·运维·ubuntu
CSCN新手听安6 小时前
【linux】高级IO,以ET模式运行的epoll版本的TCP服务器实现reactor反应堆
linux·运维·服务器·c++·高级io·epoll·reactor反应堆
丶伯爵式6 小时前
Ubuntu 24.04 更换国内软件源指南 | 2026年3月26日
linux·运维·ubuntu·国内源·升级
左手厨刀右手茼蒿6 小时前
Linux 内核中的 DMA 管理:从缓冲区到传输
linux·嵌入式·系统内核
Java后端的Ai之路7 小时前
Linux端口进程查找与终止教程
linux·运维·服务器