apps/examples/lvgldemo: Update touchpad read callback for LittleVGL V6.1
Signed-off-by: Qi Huang <huangqi3@xiaomi.com> Change-Id: I8df8ff81832ce651a4c2678d534a6aeb85cff6a7
This commit is contained in:
parent
abdc745412
commit
20f3db7317
@ -60,7 +60,8 @@
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
static int fd;static bool calibrated = false;
|
||||
static int fd;
|
||||
static bool calibrated = false;
|
||||
static int x_range;
|
||||
static int y_range;
|
||||
static int x_offset;
|
||||
@ -118,6 +119,7 @@ errout:
|
||||
* Read a TP data and store in 'data' argument
|
||||
*
|
||||
* Input Parameters:
|
||||
* indev_drv - Input device handler
|
||||
* data - Store the x, y and state information here
|
||||
*
|
||||
* Returned Value:
|
||||
@ -125,7 +127,7 @@ errout:
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
bool tp_read(FAR lv_indev_data_t *data)
|
||||
bool tp_read(struct _lv_indev_drv_t *indev_drv, lv_indev_data_t *data)
|
||||
{
|
||||
struct touch_sample_s sample;
|
||||
int nbytes;
|
||||
@ -150,7 +152,8 @@ bool tp_read(FAR lv_indev_data_t *data)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (sample.point[0].flags & TOUCH_DOWN || sample.point[0].flags & TOUCH_MOVE)
|
||||
if (sample.point[0].flags & TOUCH_DOWN
|
||||
|| sample.point[0].flags & TOUCH_MOVE)
|
||||
{
|
||||
if (calibrated)
|
||||
{
|
||||
@ -158,7 +161,6 @@ bool tp_read(FAR lv_indev_data_t *data)
|
||||
{
|
||||
last_x = sample.point[0].y;
|
||||
last_y = sample.point[0].x;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -174,7 +176,6 @@ bool tp_read(FAR lv_indev_data_t *data)
|
||||
last_x = (int)((int)last_x * LV_HOR_RES) / x_range;
|
||||
last_y = (int)((int)last_y * LV_VER_RES) / y_range;
|
||||
|
||||
|
||||
if (x_inv)
|
||||
{
|
||||
last_x = LV_HOR_RES - last_x;
|
||||
@ -194,13 +195,13 @@ bool tp_read(FAR lv_indev_data_t *data)
|
||||
last_state = LV_INDEV_STATE_PR;
|
||||
}
|
||||
else if (sample.point[0].flags & TOUCH_UP)
|
||||
{
|
||||
last_state = LV_INDEV_STATE_REL;
|
||||
}
|
||||
{
|
||||
last_state = LV_INDEV_STATE_REL;
|
||||
}
|
||||
else if (sample.point[0].flags & TOUCH_UP)
|
||||
{
|
||||
last_state = LV_INDEV_STATE_REL;
|
||||
}
|
||||
{
|
||||
last_state = LV_INDEV_STATE_REL;
|
||||
}
|
||||
|
||||
/* Update touchpad data */
|
||||
|
||||
@ -236,7 +237,9 @@ void tp_set_cal_values(FAR lv_point_t *ul, FAR lv_point_t *ur,
|
||||
|
||||
if (abs(ul->x - ur->x) < LV_HOR_RES / 2)
|
||||
{
|
||||
xy_inv = true; /*No real change in x horizontally*/
|
||||
/* No real change in x horizontally */
|
||||
|
||||
xy_inv = true;
|
||||
}
|
||||
|
||||
if (xy_inv)
|
||||
@ -285,7 +288,7 @@ void tp_set_cal_values(FAR lv_point_t *ul, FAR lv_point_t *ur,
|
||||
calibrated = true;
|
||||
|
||||
printf("tp_cal result\n");
|
||||
printf("offset x:%d, y:%d\n",x_offset, y_offset);
|
||||
printf("range x:%d, y:%d\n",x_range, y_range);
|
||||
printf("invert x/y:%d, x:%d, y:%d\n\n", xy_inv,x_inv,y_inv);
|
||||
printf("offset x:%d, y:%d\n", x_offset, y_offset);
|
||||
printf("range x:%d, y:%d\n", x_range, y_range);
|
||||
printf("invert x/y:%d, x:%d, y:%d\n\n", xy_inv, x_inv, y_inv);
|
||||
}
|
||||
|
@ -46,7 +46,9 @@
|
||||
/****************************************************************************
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/* Configuration ************************************************************/
|
||||
|
||||
/* CONFIG_EXAMPLES_LGVLDEMO_MINOR - The minor device number. Minor=N
|
||||
* corresponds to touchscreen device /dev/input0. Note this value must
|
||||
* with CONFIG_EXAMPLES_LGVLDEMO_DEVPATH. Default 0.
|
||||
@ -108,6 +110,7 @@ int tp_init(void);
|
||||
* Read a TP data and store in 'data' argument
|
||||
*
|
||||
* Input Parameters:
|
||||
* indev_drv - Input device handler
|
||||
* data - Store the x, y and state information here
|
||||
*
|
||||
* Returned Value:
|
||||
@ -115,7 +118,8 @@ int tp_init(void);
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
bool tp_read(FAR lv_indev_data_t *data);
|
||||
bool tp_read(FAR struct _lv_indev_drv_t *indev_drv,
|
||||
FAR lv_indev_data_t *data);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: tp_read
|
||||
|
Loading…
Reference in New Issue
Block a user