为节省cpu时间,键盘一般如何判断按键是否按下

 我来答
百度网友2f3f14d27
2015-12-13 · 知道合伙人互联网行家
百度网友2f3f14d27
知道合伙人互联网行家
采纳数:10387 获赞数:10681
工作于皖北矿务局,负责网络建设、维护,及大中小型服务器架设。

向TA提问 私信TA
展开全部
1、要是只是不求十分精确的估计的话,你可以在按键按下后让程序执行一个死循环,循环中一直判断按键是否松开,未松开则给一些计数用的寄存器加1,松开则跳出循环,在循环的下一句统计这些寄存器的值,根据每条指令执行时间(汇编语言指令时间很严格的)来计算出在循环中执行了多长时间;
2、如果追求十分精确的话,建议你开启一个定时器,按键按下触发一个外部中断,该中断中启动定时器,定时器开始计时,每次计满时会发生定时器中断,在这个中断中判断按键是否已松开,若已松开则停止计时,若未松开则加一下定时乘数因子,直至松开,就可以用每次定时值乘以定时乘数因子,得到总的时间,建议定时值尽可能短,如1ms、500us等,精度很高!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式