打印

关于单片机一个按键多功能的问题??

[复制链接]
4860|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hjhand|  楼主 | 2013-5-14 09:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ty20130510| | 2013-5-14 09:22 | 只看该作者
专业代理分销ST/FSC/UTC/TOREX/TI电源管理IC,MOS管,功放IC,LCD/LED驱动IC
深圳市韬裕科技有限公司
电      话:075581786738/28187039/28184980
联系人: Tina Fang
移动电话:13925274612
传      真:0755 81786745
地      址:中国 广东 深圳市宝安区 民治街道民治大道民泰大厦1025室

使用特权

评论回复
板凳
coody| | 2013-5-14 09:30 | 只看该作者
纯程序的问题, 处理好流程即可

使用特权

评论回复
地板
hjhand|  楼主 | 2013-5-14 10:11 | 只看该作者
对呀,其实完全就是程序的问题,整个流程梳理清楚,也就解决了,可是我还是混乱的啊!

使用特权

评论回复
5
huangxz| | 2013-5-14 10:44 | 只看该作者
这不是给操作的人很大难度么

使用特权

评论回复
6
NE5532| | 2013-5-14 11:21 | 只看该作者
呵呵,楼主,鼠标就2个键,实现了多少功能?所以说这个是界面的设计问题,不是一个按键不按键的问题。

使用特权

评论回复
7
hjhand|  楼主 | 2013-5-14 11:30 | 只看该作者
我同意楼上的看法,但是我要说的是:比如手机最上端有一个按钮的吧,轻按一下,手机开始锁屏了,如果按的时间长点就是关机了,对不对呢?我要强调的是有时候通过软件来达到硬件电路的简化,才会使操作者更方便的操作,我这只是一个简单的例子,其实一键多功能在很多地方都会应用到,我其实是想明白里面的思想是什么样的!!!

使用特权

评论回复
8
dirtwillfly| | 2013-5-14 11:32 | 只看该作者
只要想得出来,多少中可能都会有的。我看到过一个按键通过按下的时间长短和连续按键的快慢实现N种功能的。
话说电报机就是一个按键

使用特权

评论回复
9
hjhand|  楼主 | 2013-5-14 11:37 | 只看该作者
对对对,其实电报机真的就是用这种方式来做的:分短按键,长按键,还有连续按键等等,只要做到了就是个小小的电报机哦

使用特权

评论回复
10
康帅傅| | 2013-5-14 13:59 | 只看该作者
key的学问还蛮多哈

使用特权

评论回复
11
logokfu| | 2013-5-14 15:31 | 只看该作者
这个需要动动脑筋。其实不算难的

使用特权

评论回复
12
zdl522| | 2013-5-15 13:56 | 只看该作者
按键复用,就是程序上的逻辑

使用特权

评论回复
13
lrhsx33| | 2013-5-15 16:53 | 只看该作者
如果只是长短键,那就按下的地方判断长按(时间到就长按),松开时判断短按。只要按键有效无论长短键,就要检测松开时间,时间到了才可以再进按键程序,否则一直清按下松开计时。

使用特权

评论回复
14
byitek| | 2013-5-15 17:20 | 只看该作者
每次按下开始计时,抬起计时结束,计算每次按键时间,来判断功能。

使用特权

评论回复
15
renwocai| | 2013-5-15 17:34 | 只看该作者
在NE5532版主和傻孩子合著的书中应该有比较详细的介绍吧,我没看过AVR的书哦。用状态机。不知道还有没有其它处理方式。

使用特权

评论回复
16
hjhand|  楼主 | 2013-5-15 17:53 | 只看该作者
byitek 发表于 2013-5-15 17:20
每次按下开始计时,抬起计时结束,计算每次按键时间,来判断功能。

谢谢你的解答,每次按下按键,应该是一个下降沿,松开的时候是一个上升沿,我是这么想的,如果上升沿到下降沿之间的时间小于500ms判定为短按,大于500ms的时间就为长按,现在问题就是什么型号的单片机能够准确捕捉到这个时间呢?

使用特权

评论回复
17
From_the_UESTC| | 2013-5-15 18:15 | 只看该作者
就是计数范围判断呗。

使用特权

评论回复
18
xyz549040622| | 2013-5-15 23:14 | 只看该作者
用状态机,可参考菜农的零耗时按键

使用特权

评论回复
19
菜鸟同学| | 2013-5-15 23:23 | 只看该作者
NE5532 发表于 2013-5-14 11:21
呵呵,楼主,鼠标就2个键,实现了多少功能?所以说这个是界面的设计问题,不是一个按键不按键的问题。 ...

你太犀利了!:lol

使用特权

评论回复
20
byitek| | 2013-5-23 14:44 | 只看该作者
hjhand 发表于 2013-5-15 17:53
谢谢你的解答,每次按下按键,应该是一个下降沿,松开的时候是一个上升沿,我是这么想的,如果上升沿到下 ...

一般的单片机都没有问题。

使用特权

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

本版积分规则

6

主题

42

帖子

0

粉丝