GNMXD
发表于 2011-8-16 11:25:50
共享 一个 基于状态机思想的 矩阵键盘 源程序
此 矩阵键盘 之前是我大学时写 的俄罗斯方块 中的 矩阵键盘扫描模块。
程序是 基于 状态机的思想编写的,。
通俗易懂,支持短按、长按、按键连_发。
希望 与 大家一切讨论交流
点击此处下载 ourdev_668182A8NIVX.rar(文件大小:3K) (原文件名:MatrixKey.rar)
leofoolish
发表于 2011-8-16 18:04:01
学习
asj1989
发表于 2011-8-16 18:12:19
看看 感兴趣
jdzjk06
发表于 2011-8-16 20:39:22
正要用! 楼主好人!
GNMXD
发表于 2011-8-16 21:03:57
哈,不客气,
希望可以给初学者提供些参考。
更希望,有人说说程序的利弊。
haizaolan
发表于 2011-8-16 22:05:00
学习!
haizaolan
发表于 2011-8-16 22:06:58
学习!
Helloeveryon
发表于 2011-10-7 10:10:17
mark
huayuliang
发表于 2011-10-7 11:02:17
还没看程序,是否使用了时间片?
lixupeng
发表于 2011-11-22 20:46:25
mark学习
www1519
发表于 2011-11-22 20:56:35
mark
odeman
发表于 2011-11-26 16:16:09
学习了
shashai
发表于 2011-12-6 14:37:44
mark 学习下
LSZD
发表于 2011-12-6 15:32:20
回复【7楼】Helloeveryon
mark
-----------------------------------------------------------------------
songke
发表于 2011-12-8 08:13:28
回复【楼主位】GNMXD
-----------------------------------------------------------------------
学习一下
Ca_guo
发表于 2011-12-8 09:09:38
用状态机的思想编程在实际产品中的应用还是不少的
aida66
发表于 2011-12-10 20:26:50
看帖,不回复。不好。不过我建议楼主可以再把程序模块化,规范化,通俗化。增加可移植性。
qinguodong1
发表于 2011-12-10 22:11:31
状态机,矩阵键盘,记录一下
jacky2011
发表于 2011-12-12 14:12:40
mark
pang123hui
发表于 2012-4-22 12:04:54
正常学习状态机,也用了一些,感觉挺好
zhenglu891028
发表于 2012-4-24 10:45:08
学习一下
dongfanghuazi
发表于 2012-4-24 11:16:15
我也是这样想的
Feco
发表于 2012-4-25 09:28:27
学习一下
liuchengone11
发表于 2012-4-25 10:00:38
mark
谢谢分享
paradisespace
发表于 2012-5-31 00:09:37
mark能下载的时候再来看看先谢过
shouqiang_zhang
发表于 2012-5-31 06:06:54
下载了,但解压错误.
paradisespace
发表于 2012-5-31 08:37:17
shouqiang_zhang 发表于 2012-5-31 06:06下载了,但解压错误.
能下载?
sz2009
发表于 2012-6-1 12:04:54
mark,有空看看
liangws201
发表于 2013-10-10 20:47:47
谢谢共享
jemsky
发表于 2013-10-12 16:08:27
下载学习。
oooios
发表于 2013-10-22 08:41:29
++keyPressTimer是在定时器里面实现的吗?
l5h500
发表于 2013-10-31 21:06:38
学习了
WERWER
发表于 2013-11-20 20:44:28
学习。
liangws201
发表于 2013-12-5 23:23:40
您好,LZ。判断按键 短按、长按 连击的时候如何判断哪个按键短按 长按 连击呢? 小弟一直无法理解。
Tsiov
发表于 2013-12-5 23:45:29
很不错了。
同楼上,建议楼主编得更加规范点,增强可移植性。
另,我在想一个尽可能少消耗系统扫描时间的键盘程序。
凌海滨
发表于 2014-1-17 23:37:55
不错
huangxiaowei
发表于 2014-4-16 15:19:04
顶一下
xujihu
发表于 2014-5-3 11:28:10
支持
蓝蓝的恋
发表于 2014-5-9 10:14:29
果然是状态机,挺详细的~
weiming4033
发表于 2014-7-2 09:05:09
读一读啊。。。
2014_xkx
发表于 2014-7-9 12:07:39
LZ我也是刚学状态机代码我看了有个地方不是很懂 就是那个根据状态的不同进行的分支语句(switch语句),你那里第一次进去之后进行的动作是保存键值设置状态是消抖状态,然后就退出了,第二次进来,选择第二个case执行的是时间变量++,再判断是否到时间,若到时间了,你的操作是直接把第一次你备份的键值就当做正确的键值给返回了。我的问题是,消抖不是要进过两次判断吗?就是判断消抖前检测到的值与消抖后的值是否一样,一样的话才说明该键值是正确的键值。如果是这样的话,那你的程序就有问题了,你的是进入消抖状态后只是在那判断时间而已,没有判断新检测的键值是否与上一次备份的键值相同否,直接就是默认第一次检测到的就是正确的键值了。。。。。(说了一大堆也不知道说清楚了没,若是这样LZ还觉得是对的,恳请指教、谢谢)
成就与价值
发表于 2014-7-9 17:25:46
学习状态机机制{:handshake:}{:handshake:}{:handshake:}
yyj6798
发表于 2014-7-23 15:38:36
正要编一个比较复杂的键盘,所以谢谢lz
ZYBing
发表于 2014-8-27 21:47:34
谢谢分享!
a651588
发表于 2014-9-28 16:33:42
看看是啥思想{:lol:}
kisscontrol
发表于 2014-9-28 17:23:21
要是能支持组合键就好了,目前正准备加入组合键
jhhoward
发表于 2014-11-8 15:30:12
mark 谢谢分享!
yoursnemo
发表于 2015-7-30 22:58:44
谢谢分享~~~~思路很好,非常感谢。。
unnormal
发表于 2015-8-7 14:06:41
{:handshake:}{:handshake:}{:handshake:}
huanghb
发表于 2015-8-7 15:29:15
好好学习了
chenweigang
发表于 2017-11-21 10:44:58
不错的程序,感谢分享
jxchen
发表于 2019-3-2 23:36:21
看看~~~~~~~~~~~~
maxking
发表于 2019-3-15 09:07:03
感谢!!学习下。
ykhuixuesen
发表于 2019-3-15 09:12:08
真的很好!
wowangru
发表于 2019-3-15 09:17:35
好思想,很不错
bingshuihuo888
发表于 2019-4-4 16:16:58
谢谢分享!
见入佳境
发表于 2019-4-6 15:23:35
谢谢你,我可以用上了
页:
[1]