static void encoder_read(lv_indev_drv_t * indev_drv, lv_indev_data_t * data) { static bool but_flag = true; lv_indev_state_t encoder_act; int32_t encoder_diff; if(KEY_VAL==MEDIUM_KEY) //编码器的按键 encoder_act = LV_INDEV_STATE_PR; //按下 else encoder_act = LV_INDEV_STA...
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);// 创建输入设备 /** * @brief 触摸回调函数,通过此回调函数将触摸获取的坐标传递给 LVGL * @param indev_driver * @param data 输入设备的数据 */ voidtouch_read(lv_indev_drv_t* indev_driver,lv_indev_data_t* data) { tp = ft6336u.scan(); /* 判断屏幕...
触摸输入在lv_drv_conf.h # define USE_EVDEV 0 这个 置为1 # define EVDEV_NAME "/dev/input/event0" //这个就是输入设备了看你自己的是event几了。 在main.c的main函数中加入 evdev_init(); lv_indev_drv_t indev_drv; lv_indev_drv_init(&indev_drv); indev_drv.type =LV_INDEV_TYPE_POINTER...
lv_disp_flush_ready( disp ); }/*Read the touchpad*/voidmy_touchpad_read(lv_indev_drv_t* indev_driver,lv_indev_data_t* data ){uint16_ttouchX, touchY; booltouched = tft.getTouch( &touchX, &touchY,600); if( !touched ) ...
lv_disp_flush_ready(disp); } /* Reading input device (simulated encoder here) */ bool read_encoder(lv_indev_drv_t * indev, lv_indev_data_t * data) { static int32_t last_diff = 0; int32_t diff = 0; /* Dummy - no movement */ ...
evdev_button = LV_INDEV_STATE_REL; } //读取输入事件 void evdev_read(lv_indev_drv_t * drv, lv_indev_data_t * data) { //当获取到触摸时将读取到的点的坐标以及状态赋值给临时变量 while(ts_read(ts, &samp, 1) >...
2. 对接触摸输入接口:在lv_port_indev.c中对接 LVGL 的输入接口,LVGL 支持多种类型的输入设备,例如触摸,键盘,编码器等。输入接口必须初始化 lv_indev_drv_t 变量,最重要的是实现其 read_cb 回调函数,从而获取触摸信息。 配置RT-Thread, 编译下载工程 ...
要设置 lv_disp_drv_t 变量的字段,需要使用 lv_disp_drv_init(&disp_drv) 进行初始化。最后,要为 LVGL 注册显示设备,需要调用lv_disp_drv_register(&disp_drv)。 04. 输入设备接口 (一)、输入设备的类型 要设置输入设备,必须初始化 lv_indev_drv_t 变量: ...
☐ lv_disp_flush_ready(disp_drv); ☐ } 主要是显示缓冲区,还有打点函数的适配。 2和3就是触摸和文件相关的操作: ☐ //lvgl的输入设备初始化 ☐ void lv_port_indev_init(void) ☐ { ☐ lv_indev_drv_t indev_drv; ☐ //lvgl支持很多种输入设备,但是我们一般常用的就是触摸屏,也就是Tou...