提升基于UART接口的蓝牙打开速度的方法及系统技术方案

技术编号:24995312 阅读:50 留言:0更新日期:2020-07-24 17:58
本申请提出一种提升安卓系统上基于UART接口蓝牙打开速度的方法,包括以下步骤:在安卓系统的init进程on boot阶段,为蓝牙芯片上电并打开UART接口以加载蓝牙固件,同时初始化蓝牙固件加载属性为假;在所述蓝牙固件加载完毕后,设置蓝牙固件加载属性为真;在初始化libbt‑vendor模块时,检查所述蓝牙固件加载属性是否为真;当所述蓝牙固件加载属性为真时,直接打开蓝牙控制器上的蓝牙接口并对蓝牙芯片执行HCI_RESET操作,否则为所述蓝牙芯片上电并打开UART接口,并在加载蓝牙固件后,再打开所述蓝牙控制器上的蓝牙接口并对所述蓝牙芯片执行HCI_RESET操作。

【技术实现步骤摘要】
提升基于UART接口的蓝牙打开速度的方法及系统
本专利技术涉及蓝牙通信
,尤其涉及一种提升安卓系统上基于UART接口蓝牙打开速度的方法、系统及存储介质。
技术介绍
在安卓系统上,用户每次打开蓝牙功能时都需要先加载蓝牙固件。对于UART接口的蓝牙,由于UART接口速度的限制,加载固件的时间会使得用户通过操作界面打开蓝牙时感到明显的延迟。特别地,由于目前安卓系统上蓝牙应用领域越来越广泛,功能越来越完善,因此蓝牙固件的体量相应地变得越来越大。当用户打开蓝牙时,加载蓝牙固件的时间相应地变得越来越长,严重影响用户体验。目前行业内的惯用思路是裁剪蓝牙固件。具体地,蓝牙的基本功能被固化到ROM中,而蓝牙固件则采取PATCHRAM的形式以减小自身体量。然而,由于蓝牙芯片的ROM特性,其通常只能在出厂时烧写一次;因此,上述方案仅适用于新的蓝牙芯片。对于出厂后的芯片,上述方案对于因功能更新扩充而导致蓝牙固件体量变大的情况无能为力。
技术实现思路
本申请的目的是解决现有技术的不足,提供一种提升安卓系统上基于UART接口蓝牙打开速度的本文档来自技高网...

【技术保护点】
1.一种提升安卓系统上基于UART接口蓝牙打开速度的方法,其特征在于,包括以下步骤:/n在安卓系统的init进程on boot阶段,为蓝牙芯片上电并打开UART接口以加载蓝牙固件,同时初始化蓝牙固件加载属性vendor.bluetooth.fw.loaded为假;/n在所述蓝牙固件加载完毕后,设置蓝牙固件加载属性vendor.bluetooth.fw.loaded为真;/n在初始化libbt-vendor模块时,检查所述蓝牙固件加载属性vendor.bluetooth.fw.loaded是否为真;/n当所述蓝牙固件加载属性vendor.bluetooth.fw.loaded为真时,直接打开蓝牙...

【技术特征摘要】
1.一种提升安卓系统上基于UART接口蓝牙打开速度的方法,其特征在于,包括以下步骤:
在安卓系统的init进程onboot阶段,为蓝牙芯片上电并打开UART接口以加载蓝牙固件,同时初始化蓝牙固件加载属性vendor.bluetooth.fw.loaded为假;
在所述蓝牙固件加载完毕后,设置蓝牙固件加载属性vendor.bluetooth.fw.loaded为真;
在初始化libbt-vendor模块时,检查所述蓝牙固件加载属性vendor.bluetooth.fw.loaded是否为真;
当所述蓝牙固件加载属性vendor.bluetooth.fw.loaded为真时,直接打开蓝牙控制器上的蓝牙接口并对蓝牙芯片执行HCI_RESET操作,否则为所述蓝牙芯片上电并打开UART接口,并在完成蓝牙固件加载后,对所述蓝牙芯片执行HCI_RESET操作。


2.根据权利要求1所述的方法,其特征在于,为所述蓝牙芯片上电并打开UART接口以加载所述蓝牙固件的操作与启动zygote服务同步执行。


3.根据权利要求1所述的方法,其特征在于,系统启动期间,为所述蓝牙芯片上电并打开UART接口以加载所述蓝牙固件,并在加载所述蓝牙固件后设置所述蓝牙固件加载属性vendor.bluetooth.fw.loaded为真。


4.根据权利要求1所述的方法,其特征在于,当蓝牙被主动关闭时,所述蓝牙芯片仅被RESET一次而不断电。


5.根据权利要求4所述的方法,其特征在于,系统启动完成后,当蓝牙被打开且所述蓝牙固件加载属性vendor.bluetooth.fw.loaded为真时,所述蓝牙芯片使用之前加...

【专利技术属性】
技术研发人员:赵有以李锦泰
申请(专利权)人:珠海全志科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1