打印

按键扫描问题求助

[复制链接]
1479|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
c475301174|  楼主 | 2011-10-23 22:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
嗯,现在感觉有点迷茫,学单片机到现在都学了几个月,只是会书上介绍的那些简单的程序,根本不能应用到实际工作中,对那个按键扫描,矩阵按键扫描程序自己不能够明白到底应该要怎样写,感觉思维好混乱,以及怎样不用软件延时来消抖,不知道如何用汇编编写,迷茫啊,感觉有点烦啊,不知道从何下手

相关帖子

沙发
dong_abc| | 2011-10-23 22:59 | 只看该作者
淡定

使用特权

评论回复
板凳
云的追寻| | 2011-10-23 23:46 | 只看该作者
多看书,多编程,多上21看别人的经验。。。加油

使用特权

评论回复
地板
hopewise| | 2011-10-24 07:48 | 只看该作者
我是这样的编写按键扫描的:
      主周期固定,比如4ms-----正式因为主周期固定,子程序是不能有较大软件dealy的,如1ms之类.主周期时间是由定时器中断次数来决定的.
      因为4ms内执完所有的子程序,故要是连续判断有按键按下,则判为按键有效.

使用特权

评论回复
5
highgear| | 2011-10-24 21:06 | 只看该作者
总有这样的问题被提出来。

搜索以前的帖子,认真体会别人的做法,特别是状态机的概念。然后,多实践,多学习,多体会,慢慢的提高,做技术最忌讳浮躁。

使用特权

评论回复
6
汽车电子| | 2011-10-24 22:03 | 只看该作者
无需延时,每隔10ms调用一次,做个键码队列,三字节缓冲即可(就相当于30ms了)
键的一般属性: 按下、按住、弹起 (不管动作快慢,也只有这三个)

使用特权

评论回复
7
mugenwon| | 2011-10-25 08:11 | 只看该作者
按键用状态机来处理。分几种状态,弹起,弹起足够时间,按下,按下足够时间,处理。这2个足够时间的状态就是用来消抖的。有时还要加进一种特殊的状态,就是按住不放,一定时间(例如2秒后)后能产生连续不断按的效果。还有,处理也是一种状态,为什么呢?假如你处理的过程对cpu开销十分大,你就不能直接在按钮检测模块里面处理了,必须在程序其他地方处理!
按键检测处理可以很简单,也可以非常复杂。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

113

帖子

3

粉丝