找回密码
 立即注册
查看: 1623|回复: 10

关于STC触摸按钮示例代吗,怎么实现长按识别功能

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2025-06-27 10:40:40

6

主题

19

回帖

180

积分

注册会员

积分
180
发表于 2024-4-5 09:03:02 | 显示全部楼层 |阅读模式
官网上有触摸按钮的示例代码,烧到STC8H1K17T单片中可以使用。内容是识别每个按钮短按情况。现在项目中有个需求,就是有一个按钮是要识别长按或短按,进行相应的动作。试了好多次,一直没有在给的示例程序的基础上,修改成可以识别出长按短按的功能。请老师们指点一下,应该在哪修改才行。
其中关键的变量是TK_counter[tkn]。

在这问题搞了二天,也没有试好,哪位朋友可以帮帮忙


01.png
2.png
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:514
  • 最近打卡:2025-08-23 10:24:01

0

主题

170

回帖

1635

积分

金牌会员

积分
1635
发表于 2024-4-5 10:00:30 | 显示全部楼层
长按需要检测释放的时候,
1:每隔一段时间检测有没有按键按下,并做好备份
2:当前的状态与备份状态不一样的时候证明有按键按下,
3:等待按键释放
4:释放后计算检测的间隔用来识别长按还是短按。
来来去去就是边沿检测与状态持续时间,触摸的也是一样,只不过用高低电平变成了XXbit的数值。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:463
  • 最近打卡:2025-08-24 00:01:35

0

主题

336

回帖

1816

积分

金牌会员

积分
1816
发表于 2024-4-5 13:56:10 | 显示全部楼层
把键扫描程序放到定时中断里执行,键扫描程序检测按下的键值同时有键按下时用一个变量计数,长按动作时间=定时中断T*计数变量值
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2025-06-27 10:40:40

6

主题

19

回帖

180

积分

注册会员

积分
180
发表于 2024-4-5 18:52:31 | 显示全部楼层
个人试了,但是没有成功,有偿,可谈,想请高手出招呀。
回复

使用道具 举报 送花

1

主题

2

回帖

65

积分

注册会员

积分
65
发表于 2024-4-6 00:12:51 来自手机 | 显示全部楼层
AHBbGao 发表于 2024-4-5 18:52
个人试了,但是没有成功,有偿,可谈,想请高手出招呀。

请教,问题解决了吗?
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:566
  • 最近打卡:2025-08-23 15:25:53
已绑定手机

15

主题

1334

回帖

3766

积分

论坛元老

积分
3766
发表于 2024-4-6 08:53:35 | 显示全部楼层
AHBb*** 发表于 2024-4-5 18:52
个人试了,但是没有成功,有偿,可谈,想请高手出招呀。

论坛上就有分享,包括双击、长按的,经测试好用
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:15
  • 最近打卡:2025-03-26 09:09:59

6

主题

104

回帖

353

积分

中级会员

积分
353
发表于 2024-10-16 10:19:21 | 显示全部楼层
21cns*** 发表于 2024-4-6 08:53
论坛上就有分享,包括双击、长按的,经测试好用

哪里有呢
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:471
  • 最近打卡:2025-08-22 12:00:26

9

主题

396

回帖

2865

积分

金牌会员

积分
2865
发表于 2024-10-16 11:29:08 | 显示全部楼层
多半是用了零点追踪功能,把长按识别成零点偏移了,屏蔽零点追踪功能测试下,如果有效果,就要根据长按时间来调整零点追踪部分代码的判断条件.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:401
  • 最近打卡:2025-08-23 23:49:14
已绑定手机

4

主题

411

回帖

2185

积分

金牌会员

积分
2185
发表于 2024-10-16 14:22:27 | 显示全部楼层
按键的长按好用过,触摸的没搞过
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:441
  • 最近打卡:2025-08-23 08:34:51

12

主题

126

回帖

1965

积分

金牌会员

积分
1965
发表于 2024-10-16 21:02:34 | 显示全部楼层
这个太简单了   你首先得弄清楚触摸的原理与控制写法     其次弄个全局变量记录是否触摸   如果触摸触发了开启定时查询状态   检测到没触摸就停止计时    通过触摸时间长短就能区别长按短按了
回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-8-24 06:42 , Processed in 0.124898 second(s), 111 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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