Android BT

整个bluedroid可以分为两大模块:BTIF,BTE

BTIF:提供bluedroid对外的接口;作为bluedroid与上层的framework提供interface。所以它处于bluedroid的顶层。

BTE:bluedroid的内部处理,又细分为BTA,BTU,BTM和HCI;为芯片相关的ops

BTA:bluedroid中各profile的逻辑实现和处理;提供各种profile,我们可以将APP的打开当做一个服务,一起服务至少由一个profile构成,而APP与这个profile之间的调用又要通过interface,所以一个interface可有一个或者多个profile构成。

比喻、蓝牙音箱要connect的时候,会首先调用btif提供的bluedoroid的interface(btif_av.c),然后该interface会调用bta层的profile(bta_av_api.c)。

BTU:承接BTA与HCI

BTM:蓝牙配对与链路管理

HCI:读取或写入数据到蓝牙hw;主要抽象了BTE的ops,将BTE的ops抽象成bluedroid的接口。
蓝牙 - HCI介绍_蓝牙hci_夜流冰的博客-CSDN博客

参考文献:

蓝牙打开流程_牧天lunar的博客-CSDN博客

扫描二维码关注公众号,回复: 16098708 查看本文章

Android bluedroid模块间关系_android btif_时间农场的博客-CSDN博客

Bluedroid框架_var.zhou的博客-CSDN博客

猜你喜欢

转载自blog.csdn.net/u010664697/article/details/131830367
BT