轻触按键开关的处理方法讨论

[复制链接]
2709|15
 楼主| vivilzb1985 发表于 2013-2-27 16:21 | 显示全部楼层 |阅读模式
当用到轻触按键开关的时候,若只用一个按键来启动系统的多项功能,这个就需要对该按键的按下状态进行细微的辨别,主要是按下时间的长短的判别来进行启动多项任务功能。
至此,该按键的按下时间长短又可以用什么办法来得到呢?如需要用一个按键来启动三项功能任务-------开关机、采集数据、发送数据,该如何来实现呢?求高手们给帮着解决下的,谢谢!
airwill 发表于 2013-2-27 18:33 | 显示全部楼层
按键的按下时间长短又可以用什么办法来得到呢? 用个计时器就行了.
comeon201208 发表于 2013-2-28 11:13 | 显示全部楼层
按键时间长短可用定时器即使在跟标准比较的也可以的
comeon201208 发表于 2013-2-28 11:14 | 显示全部楼层
不过常用的还是响应IO口的中断,再进行延时到几个标准时间的在比较IO口的状态就可以实现的
comeon201208 发表于 2013-2-28 11:16 | 显示全部楼层
这种方法简单,处理不当的话会耗费单片机的资源,造成很大的资源浪费
comeon201208 发表于 2013-2-28 11:16 | 显示全部楼层
对于事实性要求非常苛刻的设备来说是可不取的
firstblood 发表于 2013-2-28 13:00 | 显示全部楼层
楼主也可以考虑下用定时器的捕获比较功能来实现的
firstblood 发表于 2013-2-28 13:02 | 显示全部楼层
显示利用单片机的定时器的自身所带的捕获功能捕捉到按键被按下所给单片机的信号
firstblood 发表于 2013-2-28 13:03 | 显示全部楼层
然后在启用单片机的定时器的比较功能,按照不同的时间长短来比较该次按键的按下时间长短
firstblood 发表于 2013-2-28 13:03 | 显示全部楼层
再根据得到的时间来确定开其对应的功能就可以啦
firstblood 发表于 2013-2-28 13:05 | 显示全部楼层
不过呢,该方法需要在设计赢家呢时候注意案件的输出信号一定要接入具有对应的定时器的捕获比较功能的IO口线上
smilingangel 发表于 2013-2-28 13:42 | 显示全部楼层
楼上两位的方法很是具体的啊,借鉴下的
dirtwillfly 发表于 2013-2-28 14:42 | 显示全部楼层
本帖最后由 dirtwillfly 于 2013-2-28 16:26 编辑

嚓,我看错了。以为是触摸开关。
方法有很多的,可以用软件解决,也可以用硬件的


zd420325 发表于 2013-2-28 16:18 | 显示全部楼层
单短按下,单长按下,快速双击  三种状态
识别的话,方法挺多的。。。。。。。
shenmu2012 发表于 2013-3-4 18:18 | 显示全部楼层
按键开关的处理看你整个系统的难易程度的,简单的自然就不用整那么复杂的就可以啦
 楼主| vivilzb1985 发表于 2013-3-5 09:07 | 显示全部楼层
谢谢各位,我结贴了,很不错的建议的啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:后来乍到,前辈们多多包涵了啊。。

88

主题

4276

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部