版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1章 B lu e T o o thR o le s -B ro a d c a s te r1.1 广播类型广播可设置以下几种类型:1)Connectable Undirected Event Type(可连接无定向广播)2)Connectable Directed Event Type(可连接定向广播)3)Scannable Undirected Event Type(可扫描无定向广播)4)Non-connectable Undirected Event Type(不可连接无定向广播)所谓定向和无定向是针对广播的对象而言的,如果是针对特定对象的广播(在广播包PDU中会包含目标对象的 BD
2、_ADDR)就是定向广播,反之就是无定向。可连接和不可连接是指是否接受连接请求,如果是不可连接的广播类型,它将不回应连接请求。可扫描类型是指回应扫描请求。在 TICC2540中实现:广播类型定位在(include/gap.h),具体定义的类型如下:GAP_ADTYPE_ADV_INDGAP_ADTYPE_ADV_HDC_DIRECT_INDGAP_ADTYPE_ADV_SCAN_INDGAP_ADTYPE_ADV_NONCONN_INDGAP_ADTYPE_ADV_LDC_DIRECT_IND其中定向可连接广播类型分成两种方式(/! Connectable undirected adverti
3、sement/! Connectable high duty cycle directed advertisement/! Scannable undirected advertisement/! Non-Connectable undirected advertisement/! Connectable low duty cycle directed advertisementHigh duty cycle和Low duty cycle)参数设置的API为:GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &advT
4、ype );可连接非定向广播包为(ADV_IND PDU)。在可连接的无定向广播类型下,一个“扫描者”或“发起者”可以用扫描请求或连接请求来回应这个广播包。“扫描者” 可发送一个扫描请求( SCAN_REQPDU)来获取广播的额外信息(SCAN_RSP);“发起者”可发送一个连接请求(CONNECT_REQ PDU)来要求Link Layer(链接层)进入链接状态。Link Layer(链接层 ) 需在同一个广播信道上监听来自“扫描者”或“发起者”的请求。如果“广播者”收到一个扫描请求包(SCAN_REQPDU),该请求包含有它的设备地址,并且该“扫描者”为广播过滤策略所允许,那么“广播者”就
5、会在同一信道上回应一个数据包(SCAN_RSP PDU)。当( SCAN_RSPDU)发送完成后,或由于广播过滤策略阻止了该请求包,“广播者”就会移到下一个广播信道来发送另一个广播包(ADV_IND PUD),或关闭广播事件。如果“广播者”收到一个连接请求包( CONNECT_REQPDU), 该请求包含有它的设备地址,并且该“发起者”为广播策略所允许, Link Layer (链接层)就会退出广播状态并转移到连接状态,并且角色转化为“从设备”。如果广播过滤策略阻止了该连接请求包,“广播者”就会移到下一个广播信道来发送另一个广播包(ADV_IND PUD),或关闭广播事件。在一个广播事件中的两
6、个相邻广播包(ADV_IND PDU)的时间间距小于等于advertising interval内完成状态的关闭。10ms,广播状态将在一个没有扫描请求和连接请求的广播事件(使用所有广播信道37、 38、 39)如下图所示:(示意图)一个包含扫描请求的广播事件(使用所有广播信道 37、38、39),扫描请求在广播事件的中间,如下图所示:(示意图)一个包含扫描请求的广播事件(使用所有广播信道 37、38、39),扫描请求在广播事件的末尾,如下图所示:(示意图)一个包含连接请求的广播事件,如下图所示:(示意图)可连接的定向广播包为(ADV_DIRECT_IND PDU)。该类型允许一个“发起者”以
7、连接请求包来回应( CONNECT_REQ PDU)该广播包,“发起者”发送一个连接请求包要求 Link Layer (链接层)进入连接状态。可连接的定向广播包(ADV_DIRECT_IND PDU)同时包含“发起者”设备地址和“广播者”设备地址。只有符合该地址的“发起者”才可向“广播者”发起一个连接请求( CONNECT_REQ PDU),也就是说当“发起者”收到该广播包时,它会检测是否和自己的地址一致,如果不一致就丢弃该包不做任何回应,如果是自己的地址,它会将它提交到Host 层,由 Host 层来决定是否发起一个连接请求。当“广播者”发送一个广播包( ADV_DIRECT_IND PDU
8、)后,它将在同一信道上监听连接请求包( CONNECT_REQ PDU)。任何扫描包将被忽略,也就是说不接受扫描请求。如果“广播者”收到一个包含它设备地址的连接请求包,并且该“发起者”就是广播包的指定目标,那么 Link Layer( 链接层 ) 将退出广播状态并转移到连接状态,并且角色将由“广播者”转化为“从设备”。否则,“广播者”将切换到下一个广播信道发送下一个广播包,或者关闭这个广播事件。在同一个广播信道上的两个相邻广播包的时间间隔小于等于3.75ms ,可见该类型的广播速度比可连接非定向广播包(=30ms)要快很多。当进入广播状态后,Link Layer(链接层)会在1.28s 内退出
9、广播状态。一个没有连接请求( CONNECT_REQPDU),含有 5个广播包( ADV_DIRECT_INDPDU)的两个广播事件序列图,如下所示:(示意图)应用场合:可连接的定向广播类型用于期望快速建立连接的场合(如:重连)。可扫描非定向广播包 (ADV_SCAN_INDPDU),允许一个 “扫描者” 回应一个扫描请求包 ( SAN_REQPDU)来向“广播者”获取附加信息( SCAN_RSP)。Link Layer(链接层)将在同一个信道上监控来自扫描者的请求。如果“广播者”收到一个包含它的地址的扫描请求包(SCAN_REQ PDU), 并且该“扫描者”的地址符合过滤策略(说白了就是该设
10、备合法,不被“广播者”的地址过滤策略过滤),那么“广播者”将在同一广播信道上回应一个数据包(SCAN_RSP PDU)。当 SCAN_RSP PDU数据包发送完成后或SCAN_REQ被过滤策略阻止,那么“广播者”将切换到下一个广播信道发送下一个广播包或关闭该广播事件。在一个广播事件中的两个相邻广播包(ADV_IND PDU)的时间间距小于等于10ms,广播状态将在advertising interval内完成状态的关闭。没有扫描请求的包序列示意如下:(示意图 )有扫描请求的包序列示意如下,其中一个扫描请求在中间,另一个扫描请求在末尾:(示意图 )(示意图)不可连接非定向广播包( ADV_NON
11、CONNN_IND PDU),该广播类型不接受任何请求包(包含:扫描请求和连接请求),“扫描者”可接收来自“广播者”的广播包。在一个广播事件中的两个相邻广播包(ADV_IND PDU)的时间间距小于等于10ms,广播状态将在advertising interval内完成状态的关闭。广播事件如下图所示:(示意图 )1.2 广播相关参数说明与广播相关可设置的参数有:1) Advertising_Interval_Min2) Advertising_Interval_Max,3) Advertising_Type,4) Own_Address_Type,5) Direct_Address_Type,
12、6) Direct_Address,7) Advertising_Channel_Map,8) Advertising_Filter_Policy9) Advertising Data10) Scan Reponse Data首先介绍一下 Advertising interval (广播时间间隔):在所有的非定向广播事件中,两个相邻的广播事件的时间间隔( T_advEvent )为:T_AdvEvent = advInterval + advDelayadvInterval必须是 0.625ms的整数倍,并且范围在“不可连接非定向广播”这两种类型,该值应不小于20ms-10.24s 之间,对于
13、“可扫描非定向广播”和100ms(即至少要 160个 0.625ms) ,对于“可连接的非定向广播”该值可设置的范围为20ms-10.24s 。advDelay 是 Link Layer(链接层)分配的一个伪随机数,它的范围为0-10ms。广播包的时间间隔示意图如下:(示意图)参数 Advertising_Interval_Min 和 Advertising_Interval_Max 就是用于调整 advertising interval 的,它们通常是以 0.625ms 为单位的,这里设置一个上限值和下限值,目的是希望让控制器根据其工作情况来动态调整合适的广播包发送频率,当然你也可以设置为同
14、一个值。Advertising_Interval_MinS i z e :2B y t e s值参数描述非定向广播包的最小广播间隔。范围: 0x0020-0x4000N = 0xXXXX默认值: N = 0x0800 ( 1.28 秒)Time = N * 0.625ms时间范围: 20ms-10.24sAdvertising_Interval_MaxS i z e :2B y t e s值参数描述非定向广播包的最大广播间隔。范围: 0x0020-0x4000N = 0xXXXX默认值: N = 0x0800 ( 1.28 秒)Time = N * 0.625ms时间范围: 20ms-10.2
15、4s就是本章介绍的各种广播类型。Advertising_TypeS i z e : 1 B y t e s值参数描述0x00Connectable undirected advertising (ADV_IND)(default)0x01Connectable directed advertising (ADV_DIRECT_IND)0x02Scannable undirected advertising (ADV_SCAN_IND)0x03Non connectable undirected advertising (ADV_NONCONN_IND)0x04 0xFFReserved for
16、 future use广播类型决定了回应包类型,下表列出各种类型下的扫描请求和连接请求的对照关系:广播类型广播包(PDU)回应包(PDU)扫描请求(SCNA_REQ)连接请求(CONNECT_REQ)可连接非定向广播ADV_INDYESYES可连接定向广播ADV_DIRECT_INDNOYES不可连接非定向广播ADV_NOCONN_IND NONO可扫描非定向广播ADV_SCAN_INDYESNOOwn_Address_TypeS i z e : 1 B y t e s值参数描述0x00Public Device Address (default)0x01Random Device Addre
17、ss0x02 0xFFReserved for future use“广播者”自身使用的设备地址类型。设备地址类型:PublicDevice Address: 公有设备地址是设备所特有的并且是不可改变的,类似网络设备的MAC地址,它的长度为位。这个地址是从IEEE注册当局获取的,由2个部分组成:Company_id部分:高地址部分由24位组成。Company_assigned 部分:低地址部分由24位组成。LSBMSBCompany_assigned (24位 )Company_id (24 位 )Ramdom Device Address:随机设备地址(私有设备地址),它也是48位LSBMS
18、Bhash (24 位)random (24 位 )定向目标的地址类型,同上。定向对象的设备地址(根据类型设置,可以是公有设备地址或私有设备地址)广播信道的选择Advertising_Channel_MapS i z e :1B y t e s值参数描述00000000b保留xxxxxxx1b允许使用 37信道xxxxxx1xb允许使用 38信道xxxxx1xxb允许使用 39信道00000111bDefault (允许所有广播信道)“广播者”过滤策略,对发来请求包设备采用的过滤策略设置:Advertising_Filter_PolicyS i z e : 1 B y t e s值参数描述0x
19、00允许任何扫描请求,允许任何连接请求(default )0x01只允许来自白名单的扫描请求,允许任何连接请求0x02允许任何扫描请求,只允许来自白名单的连接请求0x03只允许来自白名单的扫描和连接请求0x04 0xFF保留广播包中携带的广播数据,它的长度最多不超过31个字节( 0-31 ),数据必须符合下面的格式要求:(可以有多个AD数据段,每个AD数据段由 Length:Data 组成,其中 Length 为 1个字节, Data 的长度为Lenth ,所有一个 AD段的长度为 Length+1 )。广播数据可以根据实际需要进行适时改变。( 示意图 )扫描请求回应的附加数据,它的长度最多不超过31个字节( 0-31 ),数据包的格式同AdvertisingData。1.3 广播流程( Undirected Advertising)无定向广
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 陕西事业单位2026年考试备考考点试题及答案解析
- 2025年锦州北镇市面向社会公开招聘社区专职工作人员35人备考题库带答案详解
- 2025年下半年中国-东盟博览会秘书处公开招聘5人备考考点题库及答案解析
- 2025江西抚州市临川区招聘城市社区工作者(专职网格员)106人备考题库及完整答案详解1套
- 寻乌县2025年公开招聘社区工作者备考题库【10人】及一套参考答案详解
- 2026中国农业发展银校园招聘备考题库含答案详解(典型题)
- 2025鄂尔多斯东胜区招聘100名社区工作者备考题库含答案详解(预热题)
- 2025山西忻州市原平市招聘社区专职工作人员50人备考题库完整参考答案详解
- 2025沈阳市苏家屯区面向社会公开招聘社区工作者28人备考题库及答案详解一套
- 2026泸州银行校园招聘90人备考题库含答案详解(预热题)
- 颅内出血课件
- 医患代运营合同范本
- 6.2 好玩的华容道 课件 2025-2026学年二年级上册数学北师大版
- 统计法规培训
- 工地项目部征迁协调汇报
- 2025年税务师《税收征管法规》备考题库及答案解析
- 华为IPD研发质量管理精髓
- 香水销售知识培训内容课件
- 生产建设项目水土保持设施验收技术规程(2025版)
- 洒水车作业规范及安全操作规程
- 高速公路收费系统施工组织设计方案
评论
0/150
提交评论