蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)

来源:互联网 发布:php代码美化 编辑:程序博客网 时间:2024/05/17 05:51

关键词:蓝牙核心技术协议  irDA BNEP  AVDTP AVCTP

作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!)
欢迎指正错误,共同学习、共同进步!!

下载链接:Bluetooth PROFILE SPECIFICATIONS (基本涵盖所有蓝牙协议)、buletooth core 2.1-4.0 SPECIFICATION(三蓝牙版本的核心协议v2.1\v3.0\v4.0)、蓝牙核心技术与应用 马建仓 版(蓝牙协议相关初学者必读,开发者参考)

蓝牙核心技术概述(一):蓝牙概述
蓝牙核心技术概述(二):蓝牙使用场景
蓝牙核心技术概述(三): 蓝牙协议规范(射频、基带链路控制、链路管理)
蓝牙核心技术概述(四):蓝牙协议规范(HCI、L2CAP、SDP、RFOCMM)
蓝牙核心技术概述(五):蓝牙协议规范(irOBEX、BNEP、AVDTP、AVCTP)

一、IrDA互操作协议
IrOBEX 红外对象交互协议,简称OBEX,使高层协议同时运作在蓝牙和红外的无线链路之上。


主要操作指令有:连接操作、断开操作、Put操作、Get操作。

1、连接操作 ,操作码0x80

字节0

字节1、2

字节3

字节4

字节5、6

字节7~n

0x80

连接请求分组长度

OBEX版本号

标志

客户端可接收最大的OBEX分组长度

可选头


字节0

字节1、2

字节3

字节4

字节5、6

字节7~n

0x80 Connect命令

7

0x10

标志

65534

可选头

连接响应


2、断开操作  操作码为0x81

3、Put操作   操作码为0x02

连接成功后,客户端通过Put请求向服务器“推送”对象,如果对象较大,Put请求可以用多个Put请求分组。


4、Get操作操作码为0x03

二、音频与电话控制协议

1、框架部分


蓝牙音频如上图协议栈所示:音频通过基带传输同步面向连接分组实现,没有以规范的形式给出,不是协议栈的一部分。
TCS_Binary是一种基于分组电话控制二进制编码指令集,位于L2CAP之上。实现蓝牙无绳电话、对讲机功能。
RFCOMM用于AT指令,拨号上网、蓝牙耳机、耳麦、传真通过AT发送指令控制。
2、音频部分
64kbps电信级语言质量音频流
CVSD  continuous variable slope delta 连续可变斜率增量。
PCM  pulse code modulation 。
PCM存在斜率效应。CVSD使用音节压缩算法,编码步长根据信号斜率变化自动调整,是现在比较好的编码方案,提高语言的抗干扰能力。
3、电话控制部分
TCS-Binary电话控制部分。
(1)、电话呼叫
呼叫控制、呼叫建立、呼叫拆除;
(2)、组管理
访问权限请求、分布式配置、快速内部成员访问。
三、网络封装协议  BNEP
BNEP BluetoothNetworkEncapsulation Protocol 网络封装协议。
为了使集成蓝牙技术的电脑、电话、PDA、家用电器等网络设备交换信息,需要在网络层统一数据分组。网络封装协议将来自不同网络的数据分组重新封装,通过L2CAP进行传输。这部分协议感觉在现实中用处不大,有更多简单便捷的方法去实现网络功能。
BNEP支持Ipv4、Ipv6、IPX


四、音视频分发协议AVDTP
AVDTPAudio/Video Distribution Transport Protocol音视频分发传输协议

有关A/V的协议 AVDTP音视频分发传输协议、AVCTP音视频控制传输协议、GAVDP通用音视频分发框架、A2DP高级音频分发框架、AVCRP音视频遥控框架
1、基本概念术语
流stream:流是音视频传输的数据形式,单向传输,在AVDTP中被分为媒介分组。流有句柄HS统一标识。


2、信令
AVDTP信令列表

命令

信令标识符

描述

AVDTP_DISCOVER

0x01

发现设备中的流端点

AVDTP_GET_CAPABILITIES

0x02

获得流端点的信息能力

AVDTP_SET_CONFIGURATION

0x03

对SEP进行配置

AVDTP_GET_CONFIGURATION

0x04

获取SEP当前配置

AVDTP_RECONFIGURE

0x05

对SEP重新配置

AVDTP_OPEN

0x06

成功的配置SEP后,打开流

AVDTP_START

0x07

流被打开:用于开始形成流;流暂停时:用于重新形成流。

AVDTP_CLOSE

0x08

对SEP关闭

AVDTP_SUSPEND

0x09

请求SEP暂停

AVDTP_SECURITY_CONTROL

0x0A

设置设备内容保护、或者请求设备状况信息

AVDTP_ABORT

0x0B

中断正在建立或者传输的过程

AVDTP_GET_ALL_CAPABILITIES

 

 

AVDTP_DELAYREPORT

 

 

这部分信令,实现了蓝牙的A2DP 数据流的控制;
(1)、流的信令管理流程



(2)、get capabilities  获取支持特性


(3)、set configuration 配置音频参数

其他指令类似去上面两个的操作。
五、音视频控制传输协议AVCTP


AVCTP可以使音视频设备同时支持多个应用框架,每个应用框架定义了各自相应的消息格式与应用规则。
这部分操作,在现实的应用中也有不足的地方,蓝牙传输的数据量有限,实现这些功能有一定的不足。随着科学技术的发展,蓝牙在无线通信方面的优点、缺点都凸显出来,找的合适的方向,合理的发展方向是硬道理。

阅读全文
0 0
原创粉丝点击