打印
[其他ST产品]

Stm32解决按键长按与短按

[复制链接]
楼主: 突然下起雨
手机看帖
扫描二维码
随时随地手机跟帖
21
uiint| | 2023-5-5 22:15 | 只看该作者 回帖奖励 |倒序浏览
如何判断这个的时间阈值呢              

使用特权

评论回复
22
kmzuaz| | 2023-5-5 22:32 | 只看该作者
中断方式可以通过将按键连接至GPIO外部中断线来实现。当按键被按下时,会触发该GPIO的外部中断。在中断处理函数中可以设置一个定时器来延迟一段时间,再次检测按键状态。如果按键一直处于按下状态,则可以将其视为连续按键。

使用特权

评论回复
23
febgxu| | 2023-5-6 00:12 | 只看该作者
用定时器中断去扫描按键所在IO口的电平,进行计次处理。

使用特权

评论回复
24
10299823| | 2023-5-7 14:58 | 只看该作者
怎么跟调用的函数相结合呢              

使用特权

评论回复
25
51xlf| | 2023-5-7 15:37 | 只看该作者
利用状态机实现按键的长短按和双击  

使用特权

评论回复
26
tifmill| | 2023-5-7 16:10 | 只看该作者
stm32 按键处理:单击、连击、长按 都可以am

使用特权

评论回复
27
usysm| | 2023-5-7 16:19 | 只看该作者
需要考虑去抖动问题。可以通过软件去抖动或硬件去抖动的方式来解决。

使用特权

评论回复
28
i1mcu| | 2023-5-7 17:04 | 只看该作者
有可以移植的库函数使用。
              

使用特权

评论回复
29
pl202| | 2023-5-7 17:16 | 只看该作者
如果是超时怎么判断呢              

使用特权

评论回复
30
Undshing| | 2023-5-9 23:22 | 只看该作者
通过轮询或中断的方式来实现。

使用特权

评论回复
31
wenfen| | 2023-5-10 21:02 | 只看该作者
有全源代码吗?我移植没成功

使用特权

评论回复
32
chenho| | 2023-5-10 21:04 | 只看该作者
程序里最好不要有HAL_Delay

使用特权

评论回复
33
zhanglli| | 2023-5-10 21:05 | 只看该作者
轮询方式需要在主循环中不断地检测按键状态,当检测到按键被按下后,可以设置一个定时器来延迟一段时间

使用特权

评论回复
34
chenho| | 2023-5-10 21:07 | 只看该作者
再次检测按键状态。如果按键一直处于按下状态,则可以将其视为连续按键。

使用特权

评论回复
35
zhuhuis| | 2023-5-10 21:08 | 只看该作者
在STM32中,实现连续按键可以通过轮询或中断的方式来实现。

使用特权

评论回复
36
hanwe| | 2023-5-10 21:10 | 只看该作者
这个是使用的定时器判断的吗

使用特权

评论回复
37
chenho| | 2023-5-10 21:11 | 只看该作者
这个长按和端按的界定是什么              

使用特权

评论回复
38
chenho| | 2023-5-10 21:14 | 只看该作者
STM32如何实现连续按键              

使用特权

评论回复
39
songqian17| | 2023-5-10 21:16 | 只看该作者
按键松开, 判断是短按还是长按, 如果长按时间大于设定的时间(根据key.h的宏定义进行修改),返回长按数值 如果小于设定时间,说明是短按,返回短按数值

使用特权

评论回复
40
llljh| | 2023-5-10 21:18 | 只看该作者

如何判断这个的时间阈值呢              

使用特权

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

本版积分规则