微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > cc2541sensortag key 如何实现按键时间的长短判断2次以上event事件

cc2541sensortag key 如何实现按键时间的长短判断2次以上event事件

时间:10-02 整理:3721RD 点击:

请大神帮忙解答

我想在senseortag上通过一个按键利用按下的时间长短来区分判断不同的按键event事件,是否可以实现,应该如何修改?

我想在按键中断的地方加定时器延时,通过读取io的状态是否可行,应该如何修改?

谢谢!

billy,

我记得是可以用timer来判断release的。

你可以研究一下代码里release 是如何判断的。

yan,

研究了下key按键的处理,通过中断触发,25ms以后发送一次按键按下事件,然后100ms轮询一次,直到按键释放,结束本次按键上报传输事件。

在轮询的时候启动特殊定义按键延时定时器,有个问题出来了:

1、截住第一次按键按下键值发送,导致无法判断此次应该发送哪个按键值,

       只能延时到最长的哪一个时间定义的按键功能值结束,然后根据每个定时时间到了以后的flag记录来确定  此次按键被按下属于预先定义的哪一个功能键值

2、不截住的话又失去了区分同一个按键不同功能按键值定义的意义

所以要想在底层处理区分同一个按键不同事件定义,会导致按键延时严重;

同理在手机应用层处理一样会引起延时问题。

按照标准做法 只是区分 开 长按与短按 是最短的延时

虽然被这个问题搞的有点晕,不过挺好让我又加深了对按键子系统的一次理解

谢谢 

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top