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

相关推荐
AlfredZhao2 小时前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3101 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode1 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
A小辣椒3 天前
TShark:Wireshark CLI 功能
linux
A小辣椒3 天前
TShark:基础知识
linux
AlfredZhao4 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao4 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334664 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪4 天前
linux 拷贝文件或目录到指定的位置
linux
摇滚侠5 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql