eGUI - how to handle touch events properly ?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

eGUI - how to handle touch events properly ?

跳至解决方案
1,053 次查看
robroz
Contributor III

Hi,

my eGUI GUI is getting more and more screens... Some of them require more precise handling of touch events. The main question relates to how fast do I detect touches if I press&hold finger on certain point.

1. Sometimes few screens imediately change (press is quickly detected several times), but sometimes I have to press several times..

2. I have a screen where I set certain number with two buttons for up/down. If I press&hold on one of the buttons, value changes quite in different time intervals - that doesn't look good...

I guess both problems relate to need of handling touch screen events more precisely (under some screens enable repetition (and set value change rate in accordance to length of press-) and sometimes just detect single touches to navigate through screens (only to next screen not next two screens).

Any more info or examples how to deal with touch events in more precise way ?

Thanks in advance,

regards,

Bul.

0 项奖励
回复
1 解答
806 次查看
Gargy
NXP Employee
NXP Employee

Hi, try to tune up the touch screen driver parameters. This you can find in low level drivers of eGUI.

Petr

在原帖中查看解决方案

0 项奖励
回复
3 回复数
807 次查看
Gargy
NXP Employee
NXP Employee

Hi, try to tune up the touch screen driver parameters. This you can find in low level drivers of eGUI.

Petr

0 项奖励
回复
806 次查看
robroz
Contributor III

Hi,

I'd kindly ask if you can give me some further pointer into this. I suspect that also LCD related tasks and their priorities have some influence too.

So I'd like to solve this properly... I need a way to respond faster when setting numeric value to continuous press and then again wait for new press when

navigating through screens ( so screens don't fly through when user presses for a longer time)...

Any advice or pointer to more info how to do this ?

Thanks in advance,

regards,

Bul.

0 项奖励
回复
806 次查看
Gargy
NXP Employee
NXP Employee

Hi,

the reading of touch screen is finally done in D4D_Poll() function ! So you don't speed up the the reading of touch screen by better priorities of touch screen task, because in API Check Touch screen is only set up flag that mentioned request for it.

There is two ways  how to handled it faster : Do all reading your self by any user algorithm and handle touch events to eGUI by API : void D4D_PutTouchScreen(D4D_BOOL touched, D4D_COOR x, D4D_COOR y);

Or call also more often D4D_Poll() with setup D4D_CheckTouchScreen().

Petr

0 项奖励
回复