OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子全套STM32/FPGA开发资料,上千讲STM32视频教程,RT1052教程免费下载啦...
楼主: warship

开源键扫例程--- 无须延时消抖等待,能稳定可靠地一体满足普通、短按(单击/双击)、长按、组合等应用需求的键盘扫描程序

  [复制链接]

25

主题

1550

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2018-5-11
在线时间
536 小时
 楼主| 发表于 2018-10-6 14:55:56 | 显示全部楼层
掀开新的一页,从我开始吧,感谢大家的支持。
可以到我的站点https://github.com/ShuifaHe/STM32.git去下载最新的源代码,如果觉得好的话请点一下赞。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-6 19:26:22 | 显示全部楼层
谢谢楼主分享  
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-12-3
在线时间
3 小时
发表于 2018-10-6 21:01:32 | 显示全部楼层
dhcfgjfghmghjm
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-7 10:16:39 | 显示全部楼层
楼主你好,我用的你上传的用原子按键实验那个工程文档,但是测试PRESS_UP没有反应,是哪里还没设置到吗?
回复 支持 反对

使用道具 举报

25

主题

1550

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2018-5-11
在线时间
536 小时
 楼主| 发表于 2018-10-7 12:15:44 | 显示全部楼层
本帖最后由 warship 于 2018-10-7 12:21 编辑
传说中的松哥 发表于 2018-10-7 10:16
楼主你好,我用的你上传的用原子按键实验那个工程文档,但是测试PRESS_UP没有反应,是哪里还没设置到吗?

在状态机(在key.c)中,目前是屏蔽了PRESS_UP的(只输出了PRESS_DOWN以上的), 你可以换成注释掉的那一行。
        if(event>=(u8)PRESS_DOWN) //设定只输出特殊功能键(修改此处可输出按下/松开等一般事件)
//        if(event) //输出所有事件               
                return KEYOUT_BASE_DEF+event;
        else return 0;

不过,这个PRESS_UP要慎用,因为所有的按键松开都将产生一次事件,可能会与其它的按键事件发生冲突,比如:双击,中间会出现两次PRESS_UP,你处理不处理? 这个就要看你程序的需求和逻辑了。之所以在例程中屏蔽掉PRESS_UP,是为了方便演示双击等功能,逻辑判断太多了可能会让初学者困惑。
有问题提出,我会尽量解答的。别忘记在GITHUB上点个赞哦。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-7 12:47:13 | 显示全部楼层
warship 发表于 2018-10-7 12:15
在状态机(在key.c)中,目前是屏蔽了PRESS_UP的(只输出了PRESS_DOWN以上的), 你可以换成注释掉的那一 ...

嗯嗯 OK  然后WK_UP和KEY0组合按键 我还没测试成功,先按WK_UP 再按KEY0  但是没有反应  KEY0和WK_UP单独都可以工作。

我在你GITHUB上也下载了  还不怎么会用 比如直接在你GITHUB主页 硬是找不到DELAY的文件
回复 支持 反对

使用道具 举报

4

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
84
金钱
84
注册时间
2015-7-1
在线时间
19 小时
发表于 2018-10-7 14:41:12 | 显示全部楼层
下载来借鉴下
回复 支持 反对

使用道具 举报

25

主题

1550

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2018-5-11
在线时间
536 小时
 楼主| 发表于 2018-10-7 15:15:23 | 显示全部楼层
传说中的松哥 发表于 2018-10-7 12:47
嗯嗯 OK  然后WK_UP和KEY0组合按键 我还没测试成功,先按WK_UP 再按KEY0  但是没有反应  KEY0和WK_UP单独 ...

先按下WK_UP不要松开,然后再按KEY0才叫组合,类似于PC键盘的“Shift+A”
如果按下WK_UP后松开,再按KEY0的话,这显然是两次按键的一个按键先后序列,属于应用程序再去判断处理的范围了。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-7 20:29:26 | 显示全部楼层
我是这样操作的,但是没反应晚上我再试试
回复 支持 反对

使用道具 举报

2

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
132
金钱
132
注册时间
2017-6-11
在线时间
30 小时
发表于 2018-10-7 20:31:06 | 显示全部楼层
看看!!!!!!
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-7 22:33:13 | 显示全部楼层
warship 发表于 2018-10-7 15:15
先按下WK_UP不要松开,然后再按KEY0才叫组合,类似于PC键盘的“Shift+A”
如果按下WK_UP后松开,再按KEY ...

搞定了,KEY2没有用,也没初始化,初始化为上拉输入就好了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-8
在线时间
0 小时
发表于 2018-10-8 10:57:40 | 显示全部楼层
看看,谢谢分享
回复 支持 反对

使用道具 举报

25

主题

1550

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2018-5-11
在线时间
536 小时
 楼主| 发表于 2018-10-8 12:29:31 | 显示全部楼层
传说中的松哥 发表于 2018-10-7 22:33
搞定了,KEY2没有用,也没初始化,初始化为上拉输入就好了

你不是说 KEY0和WK_UP单独都可以工作,
只是组合不起作用的吗?
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2017-7-20
在线时间
15 小时
发表于 2018-10-8 13:46:17 | 显示全部楼层
谢谢大佬分享
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-8 13:48:51 | 显示全部楼层
嗯,key2没初始化,导致任何键都没按,cont=0x04  所以就不对了,初始化就好了,还有一个小小的问题,delay_ms函数,47万毫秒,你注释说的最大延时1个小时以上,470000ms 也才7分多钟啊
回复 支持 反对

使用道具 举报

2

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2015-12-7
在线时间
11 小时
发表于 2018-10-8 15:04:07 | 显示全部楼层
前排学习中!!!
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2018-10-8
在线时间
5 小时
发表于 2018-10-8 16:38:18 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

25

主题

1550

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2018-5-11
在线时间
536 小时
 楼主| 发表于 2018-10-8 17:52:03 | 显示全部楼层
传说中的松哥 发表于 2018-10-8 13:48
嗯,key2没初始化,导致任何键都没按,cont=0x04  所以就不对了,初始化就好了,还有一个小小的问题,delay ...

对,也就7分多。
哪个地方写1个小时以上?
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2018-10-8
在线时间
0 小时
发表于 2018-10-8 20:18:30 | 显示全部楼层
好人一生平安
回复 支持 反对

使用道具 举报

0

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2014-1-6
在线时间
34 小时
发表于 2018-10-8 22:16:49 | 显示全部楼层
感谢分享。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-9
在线时间
0 小时
发表于 2018-10-9 09:46:37 | 显示全部楼层
支持一下
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
79
金钱
79
注册时间
2016-5-9
在线时间
25 小时
发表于 2018-10-9 10:46:56 | 显示全部楼层
11111111111111111111111111111111111
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2018-10-9
在线时间
0 小时
发表于 2018-10-9 11:06:11 来自手机 | 显示全部楼层
嗯呢呢
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2017-9-25
在线时间
2 小时
发表于 2018-10-9 14:20:15 | 显示全部楼层
还是先谢谢了
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2018-10-9
在线时间
0 小时
发表于 2018-10-9 16:11:00 来自手机 | 显示全部楼层
可以分享
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2018-10-9
在线时间
0 小时
发表于 2018-10-9 16:11:33 来自手机 | 显示全部楼层
一下吗
回复 支持 反对

使用道具 举报

0

主题

110

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2291
金钱
2291
注册时间
2015-10-29
在线时间
380 小时
发表于 2018-10-9 18:32:15 | 显示全部楼层
谢谢!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2018-10-9
在线时间
1 小时
发表于 2018-10-9 18:50:05 | 显示全部楼层
感谢分享zsbd
回复 支持 反对

使用道具 举报

17

主题

135

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
310
金钱
310
注册时间
2013-7-9
在线时间
39 小时
发表于 2018-10-10 20:37:34 | 显示全部楼层
warship 发表于 2018-10-8 17:52
对,也就7分多。
哪个地方写1个小时以上?

2018-10-10_203627.jpg
这里
回复 支持 反对

使用道具 举报

22

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
145
金钱
145
注册时间
2018-2-27
在线时间
60 小时
发表于 2018-10-11 07:56:44 | 显示全部楼层
谢谢谢12345
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2014-12-30
在线时间
16 小时
发表于 2018-10-11 08:44:24 | 显示全部楼层
谢谢楼主分享!
回复 支持 反对

使用道具 举报

0

主题

20

帖子

0

精华

高级会员

Rank: 4

积分
704
金钱
704
注册时间
2014-4-27
在线时间
77 小时
发表于 2018-10-11 09:52:55 | 显示全部楼层
谢谢分享 mark
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2013-5-18
在线时间
32 小时
发表于 2018-10-11 10:07:11 | 显示全部楼层
学习一下
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2013-9-23
在线时间
24 小时
发表于 2018-10-11 10:37:33 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

3

主题

6

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2018-2-26
在线时间
11 小时
发表于 2018-10-11 13:18:28 | 显示全部楼层
收藏了,谢谢
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
24
金钱
24
注册时间
2018-10-2
在线时间
8 小时
发表于 2018-10-11 14:59:44 | 显示全部楼层
xuexi
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-11
在线时间
0 小时
发表于 2018-10-11 15:24:32 | 显示全部楼层
1111111111111111111
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2018-10-11
在线时间
3 小时
发表于 2018-10-11 17:04:13 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-12
在线时间
0 小时
发表于 2018-10-12 11:21:04 | 显示全部楼层
666666
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2018-10-12
在线时间
0 小时
发表于 2018-10-12 15:12:33 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-12
在线时间
0 小时
发表于 2018-10-12 21:35:07 | 显示全部楼层
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
回复 支持 反对

使用道具 举报

2

主题

10

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2018-6-16
在线时间
13 小时
发表于 2018-10-13 05:11:23 | 显示全部楼层
最近在学习 谢谢分享
回复 支持 反对

使用道具 举报

2

主题

10

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2018-6-16
在线时间
13 小时
发表于 2018-10-13 05:12:16 | 显示全部楼层
最近在学习 谢谢分享
回复 支持 反对

使用道具 举报

18

主题

207

帖子

0

精华

高级会员

Rank: 4

积分
543
金钱
543
注册时间
2017-2-19
在线时间
89 小时
发表于 2018-10-13 08:39:43 | 显示全部楼层
02020202020
回复 支持 反对

使用道具 举报

18

主题

207

帖子

0

精华

高级会员

Rank: 4

积分
543
金钱
543
注册时间
2017-2-19
在线时间
89 小时
发表于 2018-10-13 08:39:45 | 显示全部楼层
02020202020
回复 支持 反对

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2015-12-9
在线时间
41 小时
发表于 2018-10-13 09:09:22 | 显示全部楼层
厉害,谢谢分享。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-13
在线时间
0 小时
发表于 2018-10-13 09:50:26 | 显示全部楼层
扫例程--- 无须延时消抖等待,能稳定可靠地一体满足普通、短按(单击/双击)
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-5-31
在线时间
4 小时
发表于 2018-10-13 11:57:28 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-5-31
在线时间
4 小时
发表于 2018-10-13 11:57:58 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-1-3
在线时间
10 小时
发表于 2018-10-13 14:53:15 | 显示全部楼层
mark!收藏下!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

正点原子STM32/FPGA资料免费下载上一条 /1 下一条

正点原子公众号

QQ|联系我们|手机版|官方淘宝店|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2019-6-16 21:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表
/* */