wince AD采样轮询按键长按功能如何实现?

ywmen 2013-02-20 11:33:12
如题,中断形式的按键长按功能好处理,但是非中断形式按键如AD采样按键长按功能如何实现?谢谢。
...全文
688 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ywmen 2013-02-22
  • 打赏
  • 举报
回复
问题解决,结贴。
一介布衣萧萧 2013-02-20
  • 打赏
  • 举报
回复
引用 4 楼 ywmen 的回复:
引用 2 楼 brantyou 的回复:轮询检测到按键后,先记录一下,判断在一段时间内是否都还有这个按键,有就是长按键。记得处理按键去抖 代码如下: while(1) { Sleep(200); if(ReadAD(IIC_ADDR, &byValue)) { if(byValue > 0x130 && byValue < 0x16……
你在获取到按键按下的时候,应该标记一下,然后判断在你认为是长按键的时间内是否还是该按键被按下,如果是才认定为长按键。 你这里延时200ms,不知道这个while里面是只处理长按键还是所有按键的都处理,如果所有按键都处理那肯定有问题
ywmen 2013-02-20
  • 打赏
  • 举报
回复
引用 2 楼 brantyou 的回复:
轮询检测到按键后,先记录一下,判断在一段时间内是否都还有这个按键,有就是长按键。记得处理按键去抖
代码如下: while(1) { Sleep(200); if(ReadAD(IIC_ADDR, &byValue)) { if(byValue > 0x130 && byValue < 0x160) { keybd_event(VK_F10,0,0,0); keybd_event(VK_F10,0,KEYEVENTF_KEYUP,0); } else if ... ...
一介布衣萧萧 2013-02-20
  • 打赏
  • 举报
回复
轮询检测到按键后,先记录一下,判断在一段时间内是否都还有这个按键,有就是长按键。记得处理按键去抖
tymanium 2013-02-20
  • 打赏
  • 举报
回复
用定时器先做一个中断,然后再中断服务里去实现采集存储。

19,502

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧