BLE常用講解

1:主機如何發現外圍設備:

外圍設備廣播信息,主機主動掃描,外圍設備回覆掃描響應以告知主機。

2:可發現模式:由廣播中的flag標誌設置。

有限可發現模式:廣播間隔快,但最大隻能持續最多30s

通用可發現模式:廣播間隔相對較慢,廣播沒有最大還需時間限制。

3:廣播通道:

BLE中有3個廣播信道和37個數據信道。按照廣播間隔在3個廣播信道中發送廣播數據。

4:廣播數據:

BLE鏈路層最大數據負載是296字節。因爲廣播數據中需要有設備地址,因此有效數據爲31字節。

5:地址:

可以使用隨機地址或者註冊的public address。

隨機地址的最高兩個bit爲1

6:更多的廣播數據:

如果需要廣播超過31字節的數據,需要使用掃描響應。主機需要發送掃描請求。

7:廣播和掃描參數:

廣播間隔:廣播的發送週期

掃描間隔:掃描的週期。

掃描窗口:掃描週期到來後,設備掃描持續的時間。

8:連接參數:

連接間隔:連接的週期,設備只能在連接週期到了才能交互數據。

從設備延遲:以連接間隔爲單位。該參數表示從設備在必須偵聽自己的接收機以接收主設備可能的發送數據之前可以忽略多少個連接事件。

監控超時時間:該時間範圍內連接都丟失了則會產生超時事件。

9:通知和指示:

BLE是基於服務器-客戶端的方式來傳輸數據。服務器維護一個屬**器,裏面包含了服務器公開的狀態和信息等。客戶端通過屬性協議來訪問該服務器。該模式中通常都是客戶端主動發起,服務器再返回數據。 不過在一些應用中比如電量服務中,我們不可能讓客戶端(比如手機)去輪訓服務器上的電量值,而是應該在電量改變時由服務器主動發送數據給客戶端。

通知和指示就是應用於這種應用而創建的有服務器主動發起數據的方式。區別在於通知只發送數據不需確認。而指示需要客戶端回覆確認,因此被認爲是可靠傳輸。

10: 屬性:

一條帶有標籤的,可以被尋址的數據。由三種數值組成:句柄,類型,值。

11:特性:

可以看成一種或幾種屬性的組合。包含三個基本要素:聲明,數值,描述符。(這三個每個都是一個屬性)

聲明:一條屬性,值域中包含三個字段:特性性質(讀/寫/通知等等),特性數值句柄(數值屬性的地址),屬性uuid(用來識別特性數值的類型)。

數值:一條包含特性數值的屬性。

描述符:一個特性可以包含0或多個特性描述符。客戶端特性配置描述符(CCCD),特性表示描述符等。

12:屬性協議(AP),通用屬性規範(GATT),通用訪問規範(GAP)

低功耗藍牙採用的是客戶-服務器模型,屬性協議定義了客戶端與服務器如何相互發送符合標準的消息。屬性協議由六種基本操作構成:請求,響應,命令,指示,通知,確認。(當然每種操作下又含有不同的‘操作’,比如請求又分讀取請求,寫入請求等)

通用屬性規範:定義瞭如何發現與使用服務,特性與描述符的標準方法。主要有發現規程(服務,特性的發現),客戶端發起規程(客戶端的讀寫等),服務器發起規程(通知,指示)

通用訪問規範:定義了設備如何彼此發現,建立連接以及如何實現綁定,同時描述了設備如何成爲廣播者和觀察者,並且實現無連接的數據傳輸。

13:配對和綁定:

起初並未提供安全性的兩個設備如果希望做一些需要安全性的工作,首先必須配對。配對過程 涉及 :配對信息的交換,鏈路認證。如果設置了綁定位,還會有祕鑰的分發,分發的祕鑰可以存儲下來。當下次需要安全鏈路時便可不必再次配對。
主機主動掃描,外圍設備回覆掃描響應以告知主機。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章