資源描述:
《藍(lán)牙4.0 ibeacon協(xié)議》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、藍(lán)牙4.01.藍(lán)牙的六種設(shè)備狀態(tài)1.1待機(jī)狀態(tài)(standby):設(shè)備沒(méi)有傳輸和發(fā)送數(shù)據(jù),并且沒(méi)有連接到任何設(shè)備1.2廣播狀態(tài)(Advertiser):周期性廣播狀態(tài)1.3掃描狀態(tài)(Scanner):主動(dòng)尋找正在廣播的設(shè)備1.4發(fā)起鏈接狀態(tài)(Initiator):主動(dòng)向掃描設(shè)備發(fā)起連接。1.5主設(shè)備(Master):作為主設(shè)備連接到其他設(shè)備。1.6從設(shè)備(Slave):作為從設(shè)備連接到其他設(shè)備。2.藍(lán)牙的五種工作狀態(tài)2.1準(zhǔn)備(standby)2.2廣播(advertising),Ibeacon使用該狀態(tài)1)Con
2、nectableUndirectedEventType(可連接無(wú)定向廣播)2)ConnectableDirectedEventType(可連接定向廣播)3)ScannableUndirectedEventType(可掃描無(wú)定向廣播)4)Non-connectableUndirectedEventType(不可連接無(wú)定向廣播)2.3監(jiān)聽(tīng)掃描(Scanning)2.4發(fā)起連接(Initiating)2.5已連接(Connected)3.藍(lán)牙的Profile3.1Characteristic:Characteristic
3、特征值,主從機(jī)的通訊全是通過(guò)Characteristic來(lái)實(shí)現(xiàn)的,可以理解為一個(gè)標(biāo)簽,通過(guò)這個(gè)標(biāo)簽可以獲取或者寫(xiě)入想要的內(nèi)容;3.2UUID:統(tǒng)一識(shí)別碼我們剛才提到的Service和Characteristic,都需要一個(gè)唯一的UUID來(lái)標(biāo)識(shí)。3.3與廣播相關(guān)可設(shè)置的參數(shù)有:1)Advertising_Interval_Min2)Advertising_Interval_Max,3)Advertising_Type,4)Own_Address_Type,5)Direct_Address_Type,6)Direct_
4、Address,7)Advertising_Channel_Map,8)Advertising_Filter_Policy9)AdvertisingData10)ScanReponseDataAdvertisinginterval首先介紹一下Advertisinginterval(廣播時(shí)間間隔):在所有的非定向廣播事件中,兩個(gè)相鄰的廣播事件的時(shí)間間隔(T_advEvent)為:T_AdvEvent=advInterval+advDelayadvInterval必須是0.625ms的整數(shù)倍,并且范圍在20ms-10.
5、24s之間,對(duì)于“可掃描非定向廣播”和“不可連接非定向廣播”這兩種類型,該值應(yīng)不小于100ms(即至少要160個(gè)0.625ms),對(duì)于“可連接的非定向廣播”該值可設(shè)置的范圍為20ms-10.24s。advDelay是LinkLayer(鏈接層)分配的一個(gè)偽隨機(jī)數(shù),它的范圍為0-10ms參數(shù)Advertising_Interval_Min和Advertising_Interval_Max就是用于調(diào)整advertisinginterval的,它們通常是以0.625ms為單位的,這里設(shè)置一個(gè)上限值和下限值,目的是希望讓控
6、制器根據(jù)其工作情況來(lái)動(dòng)態(tài)調(diào)整合適的廣播包發(fā)送頻率。Advertising_Interval_Min非定向廣播包的最小廣播間隔。范圍:0x0020-0x4000默認(rèn)值:N=0x0800(1.28秒)Time=N*0.625ms時(shí)間范圍:20ms-10.24sAdvertising_Interval_Max4.藍(lán)牙連接過(guò)程四種設(shè)備類型:Cnetral主機(jī)(常作為client端):如手機(jī),PCPeripheral從機(jī)(常作為Service端):如心率計(jì),血糖計(jì)BroadCaster廣播者:廣告發(fā)送者,不是可連接的設(shè)備Ob
7、server觀察者:掃描廣告,不能夠啟動(dòng)連接連接過(guò)程:Peripheral從機(jī)開(kāi)啟廣播;Central掃描從機(jī)(Peripheral)廣播;Peripheral接收到Central的掃描請(qǐng)求Peripheral向Central發(fā)送掃描回應(yīng)數(shù)據(jù);Central向Peripheral發(fā)起連接;開(kāi)始通信。廣播交互過(guò)程:藍(lán)牙設(shè)備狀態(tài)切換圖:5.藍(lán)牙設(shè)備包結(jié)構(gòu)藍(lán)牙設(shè)備(BLE)有5種工作狀態(tài),其中一種是Advertising,IBeacon設(shè)備就工作在這種狀態(tài)。發(fā)射BLEPacket時(shí),除了CRC以外的其它部分均從小端開(kāi)始傳
8、輸,而CRC則從大端開(kāi)始傳輸。設(shè)備地址是BLEPacket中的一個(gè)重要部分,協(xié)議規(guī)定了設(shè)備地址的長(zhǎng)度為48bit,地址規(guī)范不再贅述。BLE將40個(gè)物理信道中的3個(gè)作為Advertising信道,分別是0,12,39,其對(duì)應(yīng)索引號(hào)為37,38,39。5.1藍(lán)牙數(shù)據(jù)包格式5.2包的說(shuō)明BLEMAC層的包格式如上圖所示,其中Preamble用于同步發(fā)射機(jī)和接收機(jī)的