Link Layer 5种状态
1、Standby State
2、Advertising State
3、Scanning State
4、Initiating State
5、Connection State
状态解析
Standby
这是初始状态,在这个状态下,不发送数据,也不接收数据。根据上层实体的命令,可由其它任何一种状态进入,也可以切换到除Connection状态外的任意一种状态。
Advertising
这是可以通过广播通道发送数据的状态。只能由Standby状态进入。它广播的数据可以由处于Scanning或者Initiating状态的实体接收。上层实体可通过命令将Advertising状态切换回Standby状态。另外,连接成功后,会切换为Connection状态。
Scanning
可以通过广播通道接收数据的状态。只能由Standby状态进入。根据Advertiser所广播的数据的类型,有些Scanner还可以主动向Advertiser请求一些额外数据。上层实体可通过命令将Scanning状态切换回Standby状态。
Initiating
这是是一种特殊的接收状态,只能由Standby状态进入,只能接收Advertiser广播的connectable的数据,并在接收到数据后,发送连接请求,以便和Advertiser建立连接。当连接成功后,Initiater和对应的Advertiser都会切换到Connection状态。
Connection
建立了单独通道的状态,在通道建立之后,由Initiating或者Advertising自动切换而来。通道断开后,会重新回到Standby状态。
状态转换图


本文介绍了BLE协议的Link Layer的5种状态:Standby、Advertising、Scanning、Initiating和Connection,详细解析了每种状态的功能和转换规则。在Standby状态下不收发数据,Advertising状态用于广播数据,Scanning状态用于接收数据,Initiating状态用于发起连接,而Connection状态则表示已建立连接。状态转换根据上层命令和接收数据的情况灵活进行。
最低0.47元/天 解锁文章
1497

被折叠的 条评论
为什么被折叠?



