迪文屏幕学习笔记三:判定按下和抬起动作

先说功能需求,就是我有个按钮,需要判定用户是否有按下和抬起动作,已达到手动控制

某个开关开启时间的目的。

先看手册:

迪文屏幕学习笔记三:判定按下和抬起动作_第1张图片

迪文屏幕学习笔记三:判定按下和抬起动作_第2张图片

迪文屏幕学习笔记三:判定按下和抬起动作_第3张图片

 迪文屏幕学习笔记三:判定按下和抬起动作_第4张图片

根据以上内容,就可以实现我要的功能,于是我按着历程,区实验,确实实现了我要的功能,

但是有个很大的问题,就是当我的OS编译代码超过1.8K时候,这个按键就失灵了,实验了各种

各样的方法,最终没有解决。当我要放弃的时候,用两个按钮来实现这一个按钮功能,抱着试试

的态度,从新看了遍数据手册,看看能不能通过别的方法解决。功夫不负有心人,终于被我找到

了,键值返回按钮+0x0016这个变量:

迪文屏幕学习笔记三:判定按下和抬起动作_第5张图片

 看到这里,我心情很激动。实现思路如下:

检测到当前按钮按键值:比键值是0x03,这个时候我就不再判定键值了,而是读0x0016这个变量,当检测到有抬起动作,则

虚拟一个键值0x05,代码如下:

迪文屏幕学习笔记三:判定按下和抬起动作_第6张图片

这样就实现了我要的功能,至于为什么是第一种方法在1.8K代码量时候失效,我也不清楚,可能是Bug吧。

今天测试发现一个问题,就是屏幕刚开机上电10s内,第一次按住长按按钮,它会自动给你发起抬起消息,

第二次就正常了,还有开机10S后,第一次点击就正常。

你可能感兴趣的:(触摸屏)