蓝牙

蓝牙协议分为四层:架构

  • 核心协议:BaseBand,链路管理LM,逻辑链路控制,适应协议L2CAP,服务搜索协议SDP;
  • 电缆替代协议:RFCOMM;
  • 电话传送控制协议:TCS-Binary、AT命令集;
  • 选用协议:PPP、UDP/TCP/IP、OBEX、WAP、vCard、vCal、IrMC、WAE。

蓝牙有两种物理链路:ACL(AsynchronousConnectionless),和另外一种链路是SCO(Synchronous Connection Oriented)。SCO主要用于同步话音传送,ACL主要用于分组数据传送。less

 

Android上的蓝牙协议栈Bluez架构以下:dom

 wince上模块划分:blog

             BTAVService同步

AVRCPModule     A2DPModuleio

              BTDInterfservice音频

AVCTP                AVDTP搜索

              L2CAPplugin

              HCIservice

Auto项目模块划分:

Feature Area:Phone(plugin+HMI)

sub-domains

 链接: 全部HFP链接相关逻辑,包括自动链接,手动链接,断开链接,重连(不包括A2DP,PBAP,MAP等)。

电话:全部电话相关逻辑。包括来电,未接,通话记录,来电信息。走的HFP协议。

通信录:通信录下载,保存。走的OBEX和PBAP协议。

短消息:走到MAP协议。

BT stereo:音频流相关,包括音频链接,音频流播放控制。走的A2DP和AVRCP协议。

代码结构

                           HMI

phone                                                                            Media

phonecore                                                                     Mediacore

HFP                                                                                    

RFCOMM      MAP     PBAP   OBEX                             A2DP AVRCP

L2Cap                                                                                                                                   Paring

HCI                                                                                                                                       

BB

相关文章
相关标签/搜索