杰理AC696N开发分享——ADKEY按键长按触发时间

发布时间:2026-6-5 14:59    发布者:清月芯世界
引言
蓝牙音箱类的PCB设计绝对少不了按键,无论是实体物理按键还是触摸按键,都需要控制模块更换模式或者音量加减和音乐的上/下曲,更加分为长按和短按,唯独长按部分在软件设计的时候容易出错,长按的触发时间长短的区分,时间一长也许就没反应了。
复现:设计过程反馈长按时间设置成8s没反应,75改成 大于240就无效, 小于240就有效。达不到8秒的效果。
分析解决
首先设置长按时间的位置如图:

在这里改动long_time这个结构体成员即可,在改动过大时,他还是大概3秒的效果;这时我们想实现更长的触发时间我们可以通过计数的方式实现这种效果在hold下创建新的宏去处理KEY_POWEROFF的事件

初始化变量

KEY_POWEROFF不做处理,通过新创建的KEY_POWEROFF_HOLD去处理关机事件,通过计数的方式判断按下一段时间后触发对应函数,在抬起时再重置计数

先在开发板上用标准ADKEY电阻验证参数,再移植到产品板。注意添加软件去抖动滤波,避免电压波动导致误触发或连击。

本文地址:https://www.eechina.com/thread-904581-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

  • Microchip视频专区
  • Dev Tool Bits | 快速轻松地安装面向VS Code®的MPLAB®工具
  • Dev Tool Bits | 了解我们全新的低成本调试器:MPLAB® PICkit™ Basic调试器
  • Dev Tool Bits | 面向VS Code®的MPLAB®工具的完整使用演示与安装配置指南
  • Dev Tool Bits | 轻松将MPLAB® X IDE项目导入VS Code®
  • 贸泽电子(Mouser)专区
关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表