OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 1972|回复: 5

一个按键检测函数如何实现多种场景的功能

[复制链接]

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2019-7-27
在线时间
26 小时
发表于 2020-1-7 09:45:45 | 显示全部楼层 |阅读模式
1金钱
写了个无阻塞按键检测函数,必须放在定时器中断里定期调用,但这样如何在不同的场景中实现不同的按键功能?
比如有两个按键,在屏幕主页中,一个是菜单键另一个是开关屏键。在菜单界面中,又变成了一个是选择键另一个是进入键。还有其他场景的,两个键都有长按短按等等不同功能。
求教该如何实现。

最佳答案

查看完整内容[请看2#楼]

我直接用发送键值的方式了,在中断的按键扫描里发送键值,然后在中断里处理键值,切换界面在主函数里处理,这样简单方便。用回调函数好像有点复杂
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2019-7-27
在线时间
26 小时
 楼主| 发表于 2020-1-7 09:45:46 | 显示全部楼层
nashui_sx 发表于 2020-1-7 22:04
回调函数方式,切换界面重新修改回调函数指针

我直接用发送键值的方式了,在中断的按键扫描里发送键值,然后在中断里处理键值,切换界面在主函数里处理,这样简单方便。用回调函数好像有点复杂
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5140
金钱
5140
注册时间
2014-8-26
在线时间
1317 小时
发表于 2020-1-7 15:44:49 | 显示全部楼层
不同界面。检测到按键调用不同应用就可以
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2019-7-27
在线时间
26 小时
 楼主| 发表于 2020-1-7 16:35:48 | 显示全部楼层
login_FAE 发表于 2020-1-7 15:44
不同界面。检测到按键调用不同应用就可以

意思是在按键检测函数里,对应的按键都添加不同界面的应用?
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5140
金钱
5140
注册时间
2014-8-26
在线时间
1317 小时
发表于 2020-1-7 16:51:10 | 显示全部楼层
在不同的菜单里面,检测到有按键  调用不同的应用就可以
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2020-1-7 22:04:23 | 显示全部楼层
回调函数方式,切换界面重新修改回调函数指针
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-19 14:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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