码迷,mamicode.com
首页 > 其他好文 > 详细

BLE控制器之链路层二

时间:2017-12-08 01:14:45      阅读:13      评论:0      收藏:0      [点我收藏+]

标签:需要   ext   附加数据   解决方法   快速   停止   影响   扫描   不能   

本部分主要描述设备的发现过程

 

广播分类

设备的发现过程是和广播分不开的,所以先来看看广播。

首先来看看广播,广播包括几种广播。

  • 通用广播
  • 定向广播
  • 不可连接广播
  • 可发现广播

来看看这几种广播的定义和区别:

通用广播
它是用途最广的广播方式,这种广播可以被扫描设备扫描到,也可以在接收连接请求时作为
从设备进入一个连接。

定向广播
什么情况下用定向广播呢?
有时候,设备间需要快速建立连接,如果从设备想这么做,就需要进行定向广播,这种广播
包含两个地址,广播者的地址和发起者的地址。那么发起设备怎么做呢?-
发起设备收到发给自己的定向广播报文后,可以立即发送链接请求作为回应。
定向广播事件的时序特殊,完整的广播事件必须3.75ms重复一次,使得扫描设备只需要扫描
3.75ms便可以收到定向广播设备的消息。
这样又会带来新的问题,如此快的发送会让报文充斥着广播信道,导致该区域内的其他设备
无法进行广播,解决方法是,定向广播不可以持续1.28s以上的时间。只要时间到,即使主机
没有要求主动停止,或者链接没有建立,都会自动停止广播。之后,主机只能使用间隔更长
的通用广播,让其他设备来链接。

注意:
当使用定向广播时,设备不能被主动扫描,同时定向广播报文的净荷中也不能带有其他
附加数据,该净荷中只能包含两个必须的地址。

 

不可连接广播
不想被连接的设备会用不可连接事件广播。这种广播的典型应用包括设备只想广播数据,而
不想被扫描或者链接。
所以此类设备永远不会进入连接状态,一旦停止广播,则转入就绪状态。

可发现广播
特点是也不能用于发起链接,但是允许其他设备扫描该广播设备,这意味着该设备可以被发现
即可以广播数据,又可以相应扫描,但是也不能建立连接。
它用于那种即要通过广播广播动态数据出去,同时也可以通过扫描响应将静态数据广播给扫描
设备。

广播内容
既然上面一直提到广播,那么广播些什么内容给对方呢?
首先来看看广播内容的格式:
长度:类型:数据
广播数据就由这种格式类型的数据一段段组成,长度定义的后面的数据长度,而类型则定义
了数据的类型,这样定义的好处是什么呢。因为广播的内容,接收设备不一定都能识别,此时
接收设备就可以通过长度来进行忽略这部分内容,跳过,而不影响去解析下一段内容。

注意两点:
1,定向广播中是没有广播内容的。
2,广播内容是不可靠的,因为无法确定广播是否被其他设备给扫描到。或者监听到。

 

BLE控制器之链路层二

标签:需要   ext   附加数据   解决方法   快速   停止   影响   扫描   不能   

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!