蓝牙的radio部分使用2.4GHz的ISM段,2400 - 2483.5 MHz,通道间隔1MHz,GFS调制,采用跳频技术,每秒至少1600次。连接完成后的跳频次数为1600次/s,在inquiry和page时为3200次/s。

1.时钟

有三种是CLK,如下图:
CLK是Master的时钟,代表某一个piconet的是时钟。slave根据下图来调整自己的时钟以达到和master一致:

Page过程中用到CLKE,时钟调整过程如下:

2.地址
蓝牙设备有一个唯一的48位地址(BD_ADDR),结构如下图:
0x9E8B00-0x9E8B3F是LAP保留的一段,用来进行inquiry operations。
对于在piconet内的active状态的设备,都有一个Active Member Address(AM_ADDR),3bit,所以一个piconet内最多有8个active设备,AM_ADDR如果是all-zero,则代表是 broadcast address。
对于在piconet内的parked状态的设备,都有Parked Member Address(PM_ADDR),8-bit,所以最多有256个处于parked状态的设备。
 
3.Physical Channel

定义了四种phasical channnel:
basic piconet channel和adapted piconet channel 用于两个已经连接的设备之间的通信,inquiry scan channel用来发现远端设备,the page scan channel用来连接设备。
 
4.Physical Links
一个physical Link代表两个设备在baseband层的连接,通常一个Physical Link与一条Physical Channel关联。
 
5.Logical Transport
一共定义了5种形式的Logical Transport:

synchronous logical transports周期性的使用预留的Slots,如果SCO建立,ACL只能使用这些Slots之外的Slots。
每一个Logical Transport都有一个Address(LT_ADDR)。在一个piconet里,每一个active状态的设备都有一个3-bit的LT_ADDR,全部为0代表广播,Master没有LT_ADDR。【这与AM_ADDR相似,是一个意思??】
 
(1)SCO和eSCO
Master最多支持3条SCO Link,可以是一个Master和一个Slave之间,也可以是一个Master和几个Slave之间。SCO常用于语音等同步数据,没有重传机制。sSCO相比于SCO在固定的Slot后增加了一个retransmission window,支持重传机制。
(2)ACL
Master和Slave只能存在一条link,并且在存在SCO link的情况下,ACL只能在预留给SCO的slots之外的Slots上传输数据。ACL支持重传。
 
6.Logical Links
定义了5中Logical links:

LC在Packet的header部分,其余的Logical links在packet的payload部分。
注意:
ACL-C可以用在SCO 或者 ACL logical transport中;SCO-S and eSCO-S用在synchronous logical transports中;ACL-U 通常用在ACL logical transport中。
ACL-C and ACL-U logical links 由packet中的payload部分的header中的logical link ID(LLID)指定。
(1)LC
携带底层的控制信息,除了ID Packet,所有的Packet中都包括LC信息。
(2)ALC-C
携带Link Manger层交换的控制信息,使用DM1或者DV packets。
(3)ALC-U
带入了L2CAP层用户的信息,可能由一个或者多个baseband包来进行传输。
(4)SCO-S和eSco-S
携带同步用户数据。
相比于除LC的几个Logical links,ALC-C拥有最高优先级。
 
7.packets
Basic Rate的packet的format如下:

General enhanced data rate packet 的format如下:

注意:baseband层的数据时Little-Endian的,LSB首先传输。
当Access Code为68bit时,称为shortened access code,用在paging, inquiry, and park时,shortened access code没有trailer。
 
8.Access Code
在physical Channel上传输都需要Access code,定义了三种Access Code:

IAC分为GIAC和DIAC,GIAC用于general inquiry operations,DIAC用于dedicated inquiry operations。
Baseband的每一个packet都是由Access Code开始的。Acess Code的格式如下:

Access Code有好几种类型:

Preamble部分如下:

SYNC根据24 bit address (LAP)计算得到。
Trailer部分如下:

header由六部分组成:

经过1/3FEC编码后变成54bit,LSB先传输。
(1)Type部分
主要的功能如下:
1.决定在哪一条logical transport上传输(SCO,eSCO或ACL)
2.是否使能Enhanced Data Rate
3.是哪种packet(SCO,eSCO或ACL)

Packet Type:
有5种Common Packet Types:ID Packet,NULL Packet,POLL Packet,FHS Packet和DM1 Packet。
这几种Type称为Link control packets:

(1)SCO Packets
HV1 Packet, HV2 Packet, HV3 Packet,DV Packet。
(2)eSCO packet
EV4、EV5  for Basic Rate
2-EV3,3-EV3,2-EV5,3-EV5 for Enhanced Data Rate
(3)ACL Packrt
DM1, DH1, DM3, DH3, DM5, DH5 and AUX1 for basic Rate
2-DH1, 3-DH1, 2-DH3, 3-DH3, 2-DH5 and 3-DH5 for Enhanced Data Rate
 
payLoad部分:
synchronous data+asynchronous data两个部分组成。ACL packets only have the asynchronous data
field and the SCO and eSCO packets only have the synchronous data field with the exception of the DV packets which have both.
ACL PayLoad结构:

LLID定义如下:

蓝牙的Baseband说明的更多相关文章

  1. 蓝牙Host Controller Interface笔记

    1.概述     HCI提供了一个统一的使用蓝牙控制器(BR/EDR Controller,BR/EDR/LE Controller,LE Controller,AMP Controller等)的方法 ...

  2. 蓝牙baseband概述

    从蓝牙specispecification中看,基带协议主要分为8个部分来介绍的,分别是概述.物理信道.物理连接.逻辑传输.逻辑连接.封包.比特流的处理.组网行为.这里面会涉及到很多的概念,主要是在概 ...

  3. 蓝牙(Bluetooth) IEEE 802.15.1 协议学习

    catalogue . 蓝牙概念 . 配对和连接 . 机密安全性 . 蓝牙协议分类 . 蓝牙协议栈 1. 蓝牙概念 蓝牙(Bluetooth)是一种无线技术标准,可实现固定设备.移动设备和楼宇个人域网 ...

  4. Bluetooth Baseband介绍

    目录 1. 概述 1.1 Clock(时钟) 1.2 寻址方式 2. 物理信道(Physical Channels) 3. 物理链路(Physical Links) 4. 逻辑传输层(Logical ...

  5. Android 4.2蓝牙介绍

    蓝牙一词源于公元十世纪丹麦国王HaraldBlatand名字中的Blatand.Blatand的英文之意就是Blue tooth.这是因为这位让丹麦人引以为傲的国王酷爱吃蓝莓以至于牙龈都被染成蓝色.由 ...

  6. 【转】Android 4.2蓝牙介绍

    原文网址:http://blog.csdn.net/innost/article/details/9187199 Tieto公司某蓝牙大牛写得<程序员>投稿文章 Android 4.2蓝牙 ...

  7. 蓝牙LMP概述

    LMP 全称是Link Manager Protocol,我们还是要一张图,说明LMP 在哪里? 他是在HCI 以下,baseband 以上,实现在蓝牙控制器中. 按照协议规范,我们分几个部分来分别介 ...

  8. Android蓝牙学习笔记

    一 Bluetooth基本概念 蓝牙是无线数据和语音传输的开放式标准,它将各种通信设备.计算机及其终端设备.各种数字数据系统.甚至家用电器采用无线方式联接起来.它的传输距离为10cm-10m,如果增加 ...

  9. ZT Android 4.2蓝牙介绍

    Android 4.2蓝牙介绍 分类: Android开发系列 2013-06-27 14:16 7110人阅读 评论(22) 收藏 举报 目录(?)[-] Android 42蓝牙介绍 一  蓝牙规 ...

随机推荐

  1. Linux常用命令_(文件权限)

    Linux权限管理: 二.权限管理1.3种基本权限在Linux中,将使用系统资源的人员分为4类:超级用户.文件或目录的属主.属主的同组人和其他人员.超级用户拥有对Linux系统一切操作权限,对 于其他 ...

  2. Web安全性测试总结

    一.工具扫描 目前web安全扫描器针对 XSS.SQL injection .OPEN redirect .PHP File Include漏洞的检测技术已经比较成熟. 商业软件web安全扫描器:有I ...

  3. 使用NGUINGUI的相关介绍

    1.3  使用NGUI 要使用NGUI,需要首先为游戏项目导入NGUI插件资源,然后再创建UI Root对象,在这以后才可以添加各种UI控件,下面本节会详解介绍这些知识本文选自NGUI从入门到实战! ...

  4. WireShark数据包分析数据封装

    WireShark数据包分析数据封装 数据封装(Data Encapsulation)是指将协议数据单元(PDU)封装在一组协议头和尾中的过程.在OSI七层参考模型中,每层主要负责与其它机器上的对等层 ...

  5. ZOJ 3157 Weapon

    题目传送门 题意:就是CF round# 329 B 的升级版,要求出相交点的个数 分析:逆序数用树状数组维护,求出非逆序数,然后所有情况(n * (n - 1)) / 2减之就是逆序数个数. #in ...

  6. NGif, Animated GIF Encoder for .NET

    1.简介 链接: http://www.codeproject.com/Articles/11505/NGif-Animated-GIF-Encoder-for-NET 2.代码使用 1)多个Imag ...

  7. POJ3581 Sequence(后缀数组)

    题意:给一个串,串的第一个字符比后面的都大,要把它分成三段,然后反转每一段,求能得到的字典序最小的串是什么. 首先,第一段是可以确定的:把原串反转,因为第一个字符是最大的,它是唯一的,不存在反转串的后 ...

  8. POJ1679 The Unique MST(次小生成树)

    可以依次枚举MST上的各条边并删去再求最小生成树,如果结果和第一次求的一样,那就是最小生成树不唯一. 用prim算法,时间复杂度O(n^3). #include<cstdio> #incl ...

  9. webkit浏览器渲染影响因素分析

    前言:浏览器的渲染对性能影响非常大,特别是在移动端页面,在宏观上,我们可以参考雅虎那20几条军规来操作,但在微观渲染层面,实际还没有一套相对成型的理论做为依据. 本文只是抛砖引玉,带大家进入微观的优化 ...

  10. POJ 3281 (最大流+匹配+拆点)

    题目链接:http://poj.org/problem?id=3281 题目大意:有一些牛,一堆食物,一堆饮料.一头牛要吃一份食物喝一份饮料才算满足,而且牛对某些食物和饮料才有好感,问最多有多少头牛是 ...