Profile依赖
图中绘出了蓝牙profile结构和其依赖,profile之间可以存在依赖关系。根据图1可以知道Hands-Free Profile依赖于Serial Port Profile和Generic Access Profile。
图1.1 蓝牙profile
HFP协议栈
基带,LMP以及L2CAP是蓝牙OSI协议的第一和第二层。
RFCOMM是蓝牙的模拟串口,SDP是蓝牙的服务发现协议。
Hands-Free control实现了Hands-Free规范信息控制,该信息基于AT命令格式。
Audio port是模拟Audio Gateway的音频端口,
图1.2 协议栈
Audio Gateway(AG) 角色是audio 的gateway角色,一个例子是智能手机。
Hands-Free Unit(HF)-是Audio Gateway远程音频输入和输出设备。如蓝牙耳机等。
HFP协议要求必须支持单声道,CVSD(Continuously variable slope delta modulation)格式的语音传输,
HF(Hands-Free) unit和Audio Gateway都可以发起和断开Audio。
基带授权和加密对HF unit和Audio Gateway都是可选的。
HFControl层
HF和AG都可以发起服务层连接,服务层连接能够建立的前提是RFCOMM连接已经建立,也就是HF和AG的之间需要有RFCOMM的数据链路。
如果在建立服务连接时RFCOMM并未在AG和HF之间建立,则发起方应当先发起RFCOMM建立,RFCOMM的建立是在GAP的SPP中定义的。
服务层