我们将【porting】目录下的【lv_port_indev_template.h】文件的条件编译打开。 然后我们需要按需裁剪输入设备。 这里,我们只使用触摸屏输入设备,其它的设备可以注释掉。然后,我们将lv_port_indev_init()函数将除了触摸屏之外的输入设备的初始化代码注释掉。接着,我们将除了触摸屏之外的输入设备...
lv_indev_drv_init(&indev_drv);// 初始化 indev_drv.type = LV_INDEV_TYPE_POINTER;// 设置设备类型 indev_drv.read_cb = touch_read;// 输入设备的回调函数 lv_indev_drv_register(&indev_drv);// 创建输入设备 /** * @brief 触摸回调函数,通过此回调函数将触摸获取的坐标传递给 LVGL * @param i...
indev_drv.register()# 启动LVGL 线程lv.tick_inc(5)lv.task_handler() Copy 注意: LCD初始化部分参照class LCD - LCD显示屏。 LVGL需要LCD对象提供lcd_write接口来刷新屏幕。 LVGL需要TP对象提供read接口来进行触摸输入。 LVGL界面绘制# 流程描述# LVGL绘制流程如下: 创建LVGL组件对象。 如有需要自定义样式,则...
evdev_init(); static lv_indev_drv_t indev_drv_1; lv_indev_drv_init(&indev_drv_1); indev_drv_1.type = LV_INDEV_TYPE_POINTER; indev_drv_1.read_cb = evdev_read; lv_indev_t *mouse_indev = lv_indev_drv_register(&indev_drv_1);...
/*Default display refresh period. LVG will redraw changed areas with this period time*/#define LV_DISP_DEF_REFR_PERIOD 10 /*[ms]*/ //默认30/*Input device read period in milliseconds*/#define LV_INDEV_DEF_READ_PERIOD 10 /*[ms]*/ //默认30 ...
LV_INDEV_TYPE_ENCODER 只有左、右和按下三个按键的编码器(比如鼠标中间的滚轮) 3.2 自定义组创建过程 首先创建一个 组(Groups) :lv_group_t * g = lv_group_create(); 然后将一个对象添加到 组(Groups) 中:lv_group_add_obj(g, obj);
1、将lv_port_indev_template.c/h中的#if 0修改为#if 1; 2、按需裁剪设备。 3、包含输入设备驱动头文件 4、在lv_port_indev_template.c中初始化相应的输入设备。 5、在lv_port_disp_template.c中返回按键设备扫描输入值 6、创建组Groups并关联相应部件 ...
LV_INDEV_TYPE_ENCODER编码器,带有左/右转和推动选项 LV_INDEV_TYPE_BUTTON外部按钮 初始化输入设备结构体lv_indev_drv_t lv_indev_drv_tindev_drv;lv_indev_drv_init(&indev_drv);//初始化结构体indev_drv.type=LV_INDEV_TYPE_POINTER;//输入设备类型,当前为鼠标indev_drv.read_cb=...//回调函数,用于定...
lv_indev_drv_register(&indev_drv); 这里的my_touchpad_read函数即为我们的输入设备的扫描函数,除了pointer,LVGL支持以下几种输入设备 typedef enum { LV_INDEV_TYPE_NONE, /**< Uninitialized state*/ LV_INDEV_TYPE_POINTER, /**< Touch pad, mouse, external button*/ ...
#include"../lib/lv_drivers/indev/evdev.h" #include<unistd.h> #include<pthread.h> #include #include<sys/time.h> #defineDISP_BUF_SIZE (128 * 1024) intmain(void) { /*LittlevGL init*/ lv_init(); /*Linux frame buffer device init*/ fbdev_init...