QCC512x QCC302x PIO 按键

sink 工程修改按键只需要在 ADK Configuration Tool ——> User Interface ——> User Events 中增加需要的事件User Events
Earbud 工程需要修改代码,需要修改的部分如下:
1、用 vscode 打开 earbud 工程目录
2、在 apps/applications/earbud 目录下复制一份 x.buttonxml 文件
3、重命名一下,比如我想要修改成3个按键“3_buttons.buttonxml”
buttonsxml
4、按需要修改该文件的内容,例如原来的进入DFU模式的代码如下:

<message>
       <messageName>APP_BUTTON_HELD_DFU</messageName> 		
       <buttonEvent>HELD</buttonEvent> 		
       <activePinFriendlyName>MFB_BUTTON</activePinFriendlyName> 		
       <timeout_ms>12000</timeout_ms> 	
</message> 
标签描述
<message>内容都在这里面包含
<messageName>自定义的消息内容
在“av_headset_ui.c” appUiHandleMessage() 函数中增加 case 来处理
<buttonEvent>按键按下的操作,支持下列几种
ENTER
RELEASE
HELD
HELD_RELEASE
DOUBLE
<activePinFriendlyName>按下的按键对应的 PIO
<timeout_ms>超时的时间,长按超过这时间,则触发
<repeat_ms>重复的时间,在 HELD 与 ENTER 事件中有效

5、在 apps/applications/earbud/qcc512x_qcc302x/common目录中 复制一份 .pio.buttonxml 文件,并重命名一下。
.pio.buttons
6、修改该文件的内容,格式如下,修改 pin name 对应的 PIO,就是将上面文件的activePinFriendlyName 与实际的 PIO 连系起来。

	<pio> 		
		<pinFriendlyName>SW1</pinFriendlyName> 		
		<pad>52</pad> 	
	</pio> 

7、修改 earbud.x2p 文件,将刚才修改好的文件替换一下
在这里插入图片描述在这里插入图片描述
8、修改 av_headset_ui.c 文件,增加对应的头文件包含,此文件会自动生成,包含即可
在这里插入图片描述
9、在工程属性选项中,修改按键的定义为
在这里插入图片描述
10、保存,重新编译,再 deploy 即可。

默认工程中已经有部分功能写好了的,可以根据自己需要来配置IO口,比如音量加减、上下曲以及一些在sink工程中的User Event 事件。一些自己开发的逻辑功能,需要在 “av_headset_ui.c” 中的 “appUiHandleMessage() ” 中增加 一个case 来处理。
当然,不仅是作为按键使用,同样可以将一些外部的 IC 中断引脚,作为按键来输入然后进case进行处理相关的逻辑功能。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值