藍(lán)牙ibeacon協(xié)議樣本.doc_第1頁(yè)
藍(lán)牙ibeacon協(xié)議樣本.doc_第2頁(yè)
藍(lán)牙ibeacon協(xié)議樣本.doc_第3頁(yè)
藍(lán)牙ibeacon協(xié)議樣本.doc_第4頁(yè)
藍(lán)牙ibeacon協(xié)議樣本.doc_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

藍(lán)牙ibeacon協(xié)議樣本 藍(lán)牙n ibeacon協(xié)議本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 11藍(lán)牙的六種設(shè)備狀態(tài)待機(jī)狀態(tài)(standby):設(shè)備沒(méi)有傳輸和發(fā)送數(shù)據(jù),并且沒(méi)有連接到任何設(shè)備廣播狀態(tài)(Advertiser):周期性廣播狀態(tài)掃描狀態(tài)(Scanner):主動(dòng)尋找正在廣播的設(shè)備發(fā)起鏈接狀態(tài)(Initiator):主動(dòng)向掃描設(shè)備發(fā)起連接。 主設(shè)備(Master):作為主設(shè)備連接到其它設(shè)備。 從設(shè)備(Slave):作為從設(shè)備連接到其它設(shè)備。 22藍(lán)牙的五種工作狀態(tài)準(zhǔn)備(standby)廣播(advertising),I Inbeacon使用該狀態(tài)本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 1)Connectable UndirectedEvent Type(可連接無(wú)定向廣播)2)Connectable DirectedEvent Type(可連接定向廣播)3)Scannable UndirectedEvent Type(可掃描無(wú)定向廣播)4)Non-connectable UndirectedEvent Type(不可連接無(wú)定向廣播)監(jiān)聽(tīng)掃描(Scanning)(Initiating)已連接(Connected)33藍(lán)牙的Profile c Characteristic:Characteristic特征值,主從機(jī)的通訊全是通過(guò)cCharacteristic來(lái)實(shí)現(xiàn)的,能夠理解為一個(gè)標(biāo)簽,通過(guò)這個(gè)標(biāo)簽?zāi)軌颢@取或者寫(xiě)入想要的內(nèi)容;UUID:統(tǒng)一識(shí)別碼我們剛才提到的Service和和Characteristic,都需要一個(gè)唯一的D UUID來(lái)標(biāo)識(shí)。 本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 :1)Advertising_Interval_Min2)Advertising_Interval_Max,3)Advertising_Type,4)Own_Address_Type,5)Direct_Address_Type,6)Direct_Address,7)Advertising_Channel_Map,8)Advertising_Filter_Policy9)Advertising Data10)Scan ReponseData Advertising interval下首先介紹一下Advertisinginterval(廣播時(shí)間間隔):在所有的非定向廣播事件中,兩個(gè)相鄰的廣播事件的時(shí)間間隔(T_advEvent)為:T_AdvEvent=advInterval+advDelay,對(duì)于“可掃描非定向廣播”和“不可連接非定向廣播”這兩種類型,該值應(yīng)不小于100ms(),對(duì)于“可連接的非定向廣播”。 本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 y advDelay是是Link Layer(鏈接層)分配的一個(gè)偽隨機(jī)數(shù),它的范圍為00-10ms參數(shù)Advertising_Interval_Min和Advertising_Interval_Max就是用于調(diào)整adl vertisinginterval的,這里設(shè)置一個(gè)上限值和下限值,目的是希望讓控制器根據(jù)其工作情況來(lái)動(dòng)態(tài)調(diào)整合適的廣播包發(fā)送頻率。 Advertising_Interval_Min非定向廣播包的最小廣播間隔。 范圍:0x0020-0x4000默認(rèn)值:N=0x0800()Time=N*時(shí)間范圍:Advertising_Interval_Max44藍(lán)牙連接過(guò)程四種設(shè)備類型:l Cral主機(jī)(常作為t client端):如手機(jī),PC l Peripheral從機(jī)(常作為e Service端):如心率計(jì),血糖計(jì)r BroadCaster廣播者:廣告發(fā)送者,不是可連接的設(shè)備r Observer觀察者:掃描廣告,不能夠啟動(dòng)連接本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 連接過(guò)程:Peripheral從機(jī)開(kāi)啟廣播;l Central掃描從機(jī)(Peripheral)廣播;l Peripheral接收到l Central的掃描請(qǐng)求l Peripheral向l Central;發(fā)送掃描回應(yīng)數(shù)據(jù);l Central向向lPeripheral發(fā)起連接;開(kāi)始通信。 廣播交互過(guò)程:藍(lán)牙設(shè)備狀態(tài)切換圖:本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 55藍(lán)牙設(shè)備包結(jié)構(gòu)藍(lán)牙設(shè)備(BLE)有有5種工作狀態(tài),其中一種是Advertising,IBeacon設(shè)備就工作在這種狀態(tài)。 射發(fā)射BLE Packet時(shí),除了CRC以外的其它部分均從小端開(kāi)始而傳輸,而CRC則從大端開(kāi)始傳輸是。 設(shè)備地址是BLE Packet中的一個(gè)重要部為分,協(xié)議規(guī)定了設(shè)備地址的長(zhǎng)度為48bit,地址規(guī)范不再贅述。 BLE將將40個(gè)物理信道中的3個(gè)個(gè)為作為Advertising信道,分別是0,12,39,其對(duì)為應(yīng)索引號(hào)為37,38,39。 本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 藍(lán)牙數(shù)據(jù)包格式包的說(shuō)明BLE MAC層的包格式如上圖所示,其中Preamble用于同步發(fā)射機(jī)和接收機(jī)的載波頻率為和時(shí)鐘,長(zhǎng)度為8bit。 在Advertising模式中,Preamble取值為10101010b。 Advertising模模的式下的Aess Address域的取值為0x8E89BED6。 PDU域即BLE Packet的協(xié)議數(shù)據(jù)單元,為其基本格式為16bit Header加上037byte的的Payload。 Header中包含了Length域用于指示Payload的長(zhǎng)度,Type域域示則用于指示PDU。 的類別。 對(duì)于于IBeacon使用的ADV_IND PDU,而言,Payload中的前6個(gè)byte是發(fā)射機(jī)的設(shè)備地址,其后則是上層協(xié)議的數(shù)據(jù)。 CRC域由PDU計(jì)算得到。 本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 數(shù)據(jù)處理流程Advertising PacketPDU的比特流處理流程主要包括兩步,算第一步是計(jì)算PDU的的CRC;做第二部是做Data Whitening,即進(jìn)行擾碼操作(scramble),通過(guò)將PDU的數(shù)據(jù)比特與偽長(zhǎng)隨機(jī)序列進(jìn)行模二和消除代調(diào)制序列中的長(zhǎng)0長(zhǎng)或長(zhǎng)1序列,這些序列會(huì)造成接收機(jī)的直流偏執(zhí),影響信號(hào)接收。 IBeacon協(xié)議持支持IBeacon的硬件設(shè)備持續(xù)送發(fā)送Advertising Packet,為附近的移動(dòng)應(yīng)用提供環(huán)境信息。 IBeacon發(fā)送的數(shù)據(jù)主要包括三個(gè)主要字段,分別是:UUID:是一個(gè)128bit的序列。 Major:16位無(wú)符號(hào)整數(shù),為取值為065535,的描述不同層級(jí)下的IBeacon設(shè)備。 Minor:16位無(wú)符號(hào)整數(shù),為取值為065535,的描述不同層級(jí)下的IBeacon設(shè)備。 RSSI:一個(gè)用于參考的RSSI值值,是距IBeacon設(shè)備1m處測(cè)得的IBeacon發(fā)射信號(hào)的信號(hào)強(qiáng)度;。 一般而言,接收設(shè)備能夠測(cè)距得接收信號(hào)的信號(hào)強(qiáng)度,根據(jù)距IBeacon1m處和接收處的信號(hào)強(qiáng)度值以及信號(hào)強(qiáng)度本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 距離模型,我們能夠估算出接收設(shè)備距IBeacon的距離,從而獲得一個(gè)相對(duì)粗粒度的環(huán)境信息。 t IBeaconPacket結(jié)構(gòu)PDU域即BLE Packet的協(xié)議數(shù)據(jù)單元,其基本格式為(16bit Header)+(Payload(2-37))ADV_IND PDU的的Payload包括兩部分,分第一部分AdvA是發(fā)射機(jī)的MAC地址,第二分部分AdvData則是上層數(shù)據(jù)。 ,協(xié)議規(guī)定,AdvData是由多個(gè)Advertising DataStructure構(gòu)成的,在每個(gè)AD Structure中:第第1個(gè)字節(jié)用于聲明該AD Structure剩余部分的長(zhǎng)度;第第2個(gè)字節(jié)用于聲明該AD Structure的類型;剩余字節(jié)則是根據(jù)與類型相關(guān)的數(shù)據(jù);本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 IBeacon的的AdvData個(gè)包含了兩個(gè)AD Structure:個(gè)第一個(gè)Structure為0xxA,02,剩余長(zhǎng)度,中其中01該指示該Structure的類型為Flag Structure,而1A則為具體的Flag集合的值。 個(gè)第二個(gè)Structure為為1a ff4c000215.,中其中ff指示該Structure的類型為制造商聲明數(shù)據(jù)有,即其格式應(yīng)有IBeacon,協(xié)議聲明,004c則是蘋(píng)果公司標(biāo)識(shí),BLE協(xié)議規(guī)定這兩字節(jié)應(yīng)為制造商標(biāo)識(shí)。 的之后的0215.即是上層的IBeacon協(xié)協(xié)的議聲明的數(shù)據(jù)了,包含了上面提到的UUID,Major,Minor以及RSSI。 本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 如圖中抓包所示:Address均為0x8E89BED6。 2.PDU BLE協(xié)議規(guī)定PDU的長(zhǎng)度為239字節(jié),其中前兩個(gè)字節(jié)是PDU的的Header,剩余字節(jié)為PDU的的Payload。 .Header,IBeacon使用的Adv PDU的類型是固定的,即ADV_IND;Type:域值為0;TxAdd:IBeacon MacAddress,的類型,1表示Random Address,0表示Public Address。 RxAdd與與TxAdd相似,指示了接收設(shè)備的地址類型,但是在IBeacon的的Payload中并沒(méi)有接收端的地址數(shù)據(jù),因此這一位是不用的,為根據(jù)協(xié)議應(yīng)將其設(shè)為0,與其它RFU位相同。 PDU-Length域長(zhǎng)6bit,指示了Payload,的字節(jié)數(shù),IBeacon的的Payload有有36個(gè)字節(jié)。 Payload,IBeacon的的Mac地址,即AdvA,其長(zhǎng)度為6byte;IBeacon的數(shù)據(jù)域AdvData,其長(zhǎng)度為30byte;3.CRC,CRC根據(jù)PDU的內(nèi)容計(jì)算得到4.AdvData部分的結(jié)構(gòu)IBeacon的的個(gè)第二個(gè)AD Structure結(jié)構(gòu)如下:1第一個(gè)字節(jié)1A表示了其剩余部分的長(zhǎng)度,本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 2第二個(gè)字節(jié)FF表示了該Structure的類型為Manufacturer SpecificData,即由制造商規(guī)定的數(shù)據(jù),BLE協(xié)議規(guī)定該類型的Structure的開(kāi)始兩個(gè)byte為制造商標(biāo)識(shí)。 3剩余的部分則是由IBeacon協(xié)議定義的數(shù)據(jù)。 5.IBeacon協(xié)議定義的業(yè)務(wù)數(shù)據(jù)結(jié)構(gòu)10215是是IBeacon Header,02是是flags,15是是payload的長(zhǎng)度。 2Beacon的的Payload(21字節(jié)):16byte是是UUID,2byte (0001)是Major2byte (0002)是Minor;1byte(C5)是RSSI,RSSI是用補(bǔ)碼表示的,這里的值是-59。 數(shù)據(jù)包總體結(jié)構(gòu)描述BLU:PREAMBLE( (1)ACESS ADDRESS( (4)PDU(2-39)CRC (3)PREAMBLE:用于同步發(fā)射機(jī)和接收機(jī)的載波為頻率和時(shí)鐘,長(zhǎng)度為8bit;ACESS ADDRESS:針對(duì)Advertising包的是是:0x8e89bed6.(固定的,數(shù)字信道。 通過(guò)地址是就知道這是adv包,同一頻道區(qū)分不同通訊設(shè)備的);本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 PDU數(shù)據(jù)段:HEADER PAYLOADPDU-HEADER:Type (6)TxAdd (1)RxAdd (1)PDU-Length (8)Type數(shù)據(jù)報(bào)類型:ADV_IND廣播能夠連接的設(shè)備。 說(shuō)明自己是能夠被連接的,廣播中帶有自己的地址ADV_DIRECT_IND:用來(lái)向特定的設(shè)備建立連接。 ADV_NONCONN_IND:個(gè)包用來(lái)廣播信息SCAN_REQ SCAN_RSP CONNECT_REQ PAYLOAD:地址(6字節(jié))ADSTRUCTURE1ADSTRUCTURE2本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除。 ADSTRUCTURE1:Length T T ype(flag)T Type VV alue變長(zhǎng)數(shù)據(jù)(ibeacon為為00)Length:ADSTRUCTURE1包長(zhǎng)度T Type(flag):類型T Type VV alue:類型值A(chǔ)DSTRUCTURE2:Length T Te ype(flag)(ff指明為制造商)T Type VV alueIBEACON Length:ADSTRUCTURE2包長(zhǎng)度TType(flag)f:0xff為制造商標(biāo)識(shí)TType VV alue:制造商值IBEACON:本文檔所提供的信息僅供參考之用,不能作為科學(xué)依據(jù),請(qǐng)勿模仿。 文檔如有不當(dāng)之處,請(qǐng)聯(lián)系本人或網(wǎng)站刪除

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論