蓝牙
蓝牙协议分为四层:
- 核心协议: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主要用于分组数据传送。

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


wince上模块划分:
BTAVService
AVRCPModule A2DPModule
BTDInterfservice
AVCTP AVDTP
L2CAP
HCI
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
浙公网安备 33010602011771号