mtk硬件启动关闭蓝牙功能的项目:mtk 上层操作GPIO应用示例

mtk硬件启动关闭蓝牙功能的项目:mtk上层操作GPIO应用示例

项目要求:

接上篇:

1:蓝牙按键(KCOL2+KROW1)长按3秒,软件上控制GPIO144拉高2秒后关闭,蓝牙就开启并搜索配对。同时拉高GPIO98,控制音频的模拟开关切换蓝牙音源。

2:蓝牙在工作状态下,给出个1.8V的高电平,给GPIO145用来检测蓝牙的工作状态。

3:蓝牙在工作装态下想要重新配对,在长按蓝牙按键3秒,控制GPIO97拉高3秒后关闭,蓝牙模块在收到这个信号后执行清空列表和重新搜索功能。

4:蓝牙按键(KCOL2+KROW1)长按8秒,软件上控制GPIO144拉高2秒后关闭,蓝牙模块就关闭了

本篇讲述如何控制。

1, 设置蓝牙控制GPIO为初始状态,GPIO97 98 144全部设置为GPIOOUT,且下拉。GPIO145设置为GPIOIN


2,侦测开机事件boot_completed,在这个intent处理程序中,检查btswitched的状态,如果为//checked状态,那么打开蓝牙,如果为非checked状态,则不理会。

第一步,在AndroidManifest.xml中添加:

<receiverandroid:name="BootCompletedReceiver">

<intent-filter>

<actionandroid:name="android.intent.action.BOOT_COMPLETED"/>

</intent-filter>

</receiver>


不要忘记加入权限:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

另外,接收BOOT_COMPLETED,不能安装,必须直接push到/system/app/


在当前包下面建立BootCompletedReceiver.java文件

我们定义两个SharedPreferences来保存系统的btethernet状态,因为省电需求,我们每次开机都保持EthernetBT为关闭。

packagecom.mediatek.oobe;


importandroid.app.Activity;

importandroid.content.BroadcastReceiver;

importandroid.content.Context;

importandroid.content.Intent;

importandroid.content.SharedPreferences;

importandroid.util.Log;


publicclassBootCompletedReceiverextends

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值