杰理芯片SDK开发-内置触摸按键配置教程

前言

到现在为止也开发了许多杰理TWS蓝牙耳机项目SDK的案子,在调试案子时不断的向前辈们学习到了很多关于蓝牙TWS耳机专业的知识。想在这里做一个学习汇总,方便各位同行和对杰理芯片SDK感兴趣的小伙伴们学习;

本章详细讲解杰理TWS耳机项目SDK开发中内置触摸按键配置

在调试一个TWS蓝牙耳机案子时,按键通常是我们必须要添加的功能,通过按键我们可以实现音量的增大/减少,歌曲的播放/暂停,曲目的切换,开机/关机等特定功能;在杰理SDK中有非常多的按键种类在board_xxx_demo_cfh.h文件中可供我们配置如下图;

按键配置:


GPIO引脚配置


AD电压值配置


红外按键配置


内置触摸按键配置


内置触摸按键感应原理

内置触摸按键检测模块是利用人体分布电容对触摸按键电容影响来进行按键检测的,如下图:

当人体触摸外部电容按键时,IO口外部电容增加,芯片内部的触摸感应模块可以检测到该电容变化,从而检测到按键是否被按下。在没有触摸的时候,PCB板走线和其他寄生电容组成了触摸按键固有电容Cp,当按键被触摸,电容增加了Cs,当Cs/Cp越大时,触摸按键检测越灵敏,PCB layout建议尽可能减少Cp,增加Cs,以增加触摸按键灵敏度。


内置触摸按键配置详细介绍

内置触摸按键功能开关配置在board_xxx_demo_cfg.h文件中,如下图所示;


内置触摸按键结构体配置在board_xxx_demo.c文件中,如图所示;

结构体详细讲解:

.ch 0 .enable为触摸模块开关,可以直接赋值为1或与TCFG_LP_TOUCH_KEY0_EN宏定义进行绑定。

.ch 0 .port为触摸模块检查GPIO脚,因为是内置触摸按键。原厂已配置好。所以不能进行修改

.ch 0 .sensitivity为触摸按键电容灵敏度配置,通过TCFG_LP_TOUCH_KEY0_SENSITIVITY宏定义进行灵敏度的修改也可以通过配置工具配置

.ch 0 .key_value为触摸按键键值,非常重要是直接跟key_table按键消息表关联。当单击、双击、长按、持续长按等操作时,会直接响应key_table按键消息表的事件;


key_table按键消息表详细介绍

key_table按键消息表在board_xxxx_demo.c文件中,如图所示:

key_table按键消息表有三个非常重要的参数需要我们开发人员特别注意:

参数1:为按键键值,按键键值是直接跟key_table数组的行元素对应的。例如说:按键键值设置为0,那么就对于key_table数字的0行索引也就是第一行;

参数2:为按键操作类型,按键操作类型是直接跟key_table数组的列元素对应的。例如说:配置了按键键值为0,执行单击事件。那么直接映射key_table数组的行索引0列索引0也就是第一行第一列key_music_pp事件;

参数3:为按键执行操作后TWS耳机应该执行什么功能;例如单击事件KEY_EVENT_CLICK操作后,TWS耳机执行KEY_MUSIC_PP音乐播放/暂停操作;

参数2:按键操作类型在event.h文件中,如下图

参数3:按键操作执行功能事件在key_event_deal.h文件中,如下图所示:


制作不易!喜欢的小伙伴给个小赞赞!喜欢我的小伙伴点个关注!有不懂的地方和需要的资源随时问我哟!

相关推荐
ifndef2 天前
GPIO同时复用(ADC与TIM)
mcu
Inhand陈工5 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
大鱼>5 天前
大语言模型+物联网:LLM理解物理世界
物联网·struts·语言模型·多模态·aiot
果丁智能5 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
u152109648495 天前
S.S.Audio PRO A2音频隔离器
嵌入式硬件·音视频·实时音视频·视频编解码·视频
zd8451015005 天前
RS485 总线详解
单片机·嵌入式硬件
国产化创客5 天前
ESP32 CameraWebServer 原生摄像头项目全解析
物联网·开源·嵌入式·实时音视频·智能硬件
半条-咸鱼5 天前
【STM32】I2C协议原理、HAL读写与OLED显示操作
嵌入式硬件·c·信息与通信
谁似人间西林客5 天前
数据智能怎么赋能工业制造?物联网场景落地方法解析
物联网·制造
InHand云飞小白5 天前
无人值守站点网络困境?工业级路由器IR315破解连接难题
网络·物联网·4g·工业路由器·4g路由器·iiot·蜂窝路由器