1. 程式人生 > >一,藍芽基礎知識

一,藍芽基礎知識

藍芽( Bluetooth® )

是一種無線技術標準,可實現固定裝置、移動裝置和樓宇個人域網之間的短距離資料交換(使用2.4—2.485GHz的ISM波段的UHF無線電波)。

裝置型別

  • 經典藍芽
  • 雙模裝置
    支援經典藍芽,低功耗藍芽
  • 單模裝置
    只支援低功耗藍芽

藍芽4.0

藍芽核心規範版本 4.0 LE( 低功耗)針對儘可能最低的功耗進行了優化。藍芽 4.0 LE 假設
外圍裝置以一枚鈕釦電池作為主電源,並且對等裝置之間不對稱。中心裝置配有更大的存
儲器和電池,而外圍裝置則配有有限的儲存器和電池。

特點

  • 超低的峰值、平均和待機模式功耗
  • 使用標準鈕釦電池可執行一年乃至數年
  • 低成本
  • 不同廠商裝置互動性
  • 無線覆蓋範圍增強
  • 完全向下相容
  • 低延遲

低功耗藍芽體系結構

image

image

在控制器內既有物理層和鏈路層,又有直接測試模式和主機控制器介面(HCI)層的下半部。在主機內包含了三個協議:邏輯鏈路控制和適配協議(L2CAP)屬性協議(Attribute Protocol)和安全管理器協議(Security Manager Protocol),此處還包括通用屬性規範(GATT)、通用訪問規範(GAP)和模式(MODE)

控制器(hci)

控制器與外界通過天線相連,與主機通過主機控制介面(HCI)相連。

主機

邏輯鏈路控制和適配協議 L2CAP

Logical Link Control and Adaptation Protocol也稱為邏輯鏈路控制和適配協議.
是藍芽的複用層。
L2CAP由兩個部分組成

  • l2cap通道:雙向資料通道,通向對端裝置的某一特定協議或規範。
  • l2cap信令

主機構建了主機控制器介面的上層部分.GATT是需要強調的。

通用訪問協議 Generic Access Profile (GAP)

和GATT聯合起來定義了與藍芽裝置的發現、藍芽裝置的資訊共享相關的角色和流程,定義了裝置連線中的連結管理流程。

GATT(通用屬性規範)

定義服務、特性、宣告和描述符的概念。上層應用程式利用這些概念派生功能。
GATT 不負責定義屬性的使用規則。

GATT定義了客戶端和伺服器角色。GATT程式可以被認為分為三種基本型別:發現程式(Discovery procedures)、客戶端啟動程式(Client-initiated procedures)和伺服器啟動程式( Server-initiated procedures)。GATT伺服器儲存在ATT上傳輸的資料,並接受來自GATT客戶機的ATT請求、命令和確認。在GATT伺服器上發生指定事件時,GATT伺服器會發送響應請求並向GATT客戶端非同步傳送指示和通知。GATT還指定了GATT伺服器上的資料格式。

主機既可以是GATT客戶端,也可以是GATT伺服器;從機既可以是GATT客戶端,也可以是GATT伺服器。一個GATT伺服器中可包含一個或多個GATT服務,GATT服務是完成特定功能的一系列資料的集合。

GATT定義的多層資料結構簡要概括起來就是服務(service)可以包含多個特徵(characteristic),每個特徵包含屬性(properties)和值(value),還可以包含多個描述(descriptor)。它形象的結構如下圖:
image

GATT包含若干個Profile,一個Profile包含若干個Services,一個Service包含若干個Characteristics,一個Characteristic包含Properties欄位和若干個Descriptor(可選)

應用層

定義了上種類型:特性(characterustic)、服務(service)和規範(profile)