找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2125|回复: 4
收起左侧

按键状态机

[复制链接]
ID:187509 发表于 2017-9-7 12:00 | 显示全部楼层 |阅读模式
if(KeyPressTemp2)                                为什么代表按下时间小于1s
else if(++KeyTime > 100)     为什么代表按下时间大于1s
回复

使用道具 举报

ID:231628 发表于 2017-9-7 12:18 | 显示全部楼层
NIZHSHISZM 是什么户
回复

使用道具 举报

ID:231633 发表于 2017-9-7 13:09 | 显示全部楼层
局部一小段代码不足以分析问题。
回复

使用道具 举报

ID:78505 发表于 2017-9-7 15:49 | 显示全部楼层
如果我猜的不错的话,逻辑上应该是这样的:
回复

使用道具 举报

ID:78505 发表于 2017-9-7 15:54 | 显示全部楼层
如果我猜的不错的话,逻辑上应该是这样的:
1、当按键被按下时,KeyPressTemp2被置1,进入处理,处理完成后KeyPressTemp2置0;
2、由于短按的事件已被处理,开始执行 else if(++KeyTime > 100)条件下的事件,当时该事件需要
     满足KeyTime > 100的条件,如果整个函数的调用间隔是10ms时,就等于是每隔10ms KeyTime
     数值+1,1s后满足条件,执行事件  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表