隨著近年來藍牙技術的不斷發展,在功耗不斷降低的情形下,藍牙的傳輸速率也不斷地得到提高,使藍牙的應用範圍更加廣泛。但若想設計一套完善的藍牙系統,就必須充分掌握藍牙的相關技術知識,如:射頻設計、協議堆棧、系統集成及藍牙模塊的選型等方面的專門知識。本文將介紹其中藍牙模塊基礎知識。

1、數據透傳

藍牙模塊可以通過串口(SPI、IIC)和MCU控制設備進行數據傳輸。

藍牙模塊可以做為主機和從機。主機就是能夠搜索別的藍牙模塊並主動建立連接,從機則不能主動建立連接,只能等別人連接自己。

2、低功耗

低功耗藍牙(Bluetooth

Low Energy),簡稱BLE。藍牙低能耗無線技術利用許多智能手段最大限度地降低功耗。

藍牙低能耗架構共有兩種晶元構成:單模晶元和雙模晶元。藍牙單模器件是藍牙規範中新出現的一種只支持藍牙低能耗技術的晶元——是專門針對ULP操作優化的技術的一部分。藍牙單模晶元可以和其它單模晶元及雙模晶元通信,此時後者需要使用自身架構中的藍牙低能耗技術部分進行收發數據。雙模晶元也能與標準藍牙技術及使用傳統藍牙架構的其它雙模晶元通信。

註:按應用可分為數據藍牙模塊和語音藍牙模塊,前者完成無線數據傳輸,後者完成語音和立體聲音頻的無線數據傳輸。

3、藍牙協議組成

藍牙協議體系中的協議按SIG的關注程度分為四層:

(1)核心協議:BaseBand、LMP、L2CAP、SDP;

(2)電纜替代協議:RFCOMM;

(3)電話傳送控制協議:TCS-Binary、AT命令集;

(4)選用協議:PPP、UDP/TCP/IP、OBEX、WAP、vCard、vCal、IrMC、WAE。

除上述協議層外,規範還定義了主機控制器介面(HCI),它為基帶控制器、連接管理器、硬體狀態和控制寄存器提供命令介面。在上圖中可見,HCI位於L2CAP的下層,但HCI也可位於L2CAP上層。

藍牙核心協議由SIG制定的藍牙專用協議組成。絕大部分藍牙設備都需要核心協議(加上無線部分),而其他協議則根據應用的需要而定。總之,電纜替代協議、電話控制協議和被採用的協議在覈心協議基礎上構成了面嚮應用的協議。

4、藍牙基本架構

4.1底層硬體模塊

(1)無線射頻模塊(Radio):藍牙最底層,帶微帶天線,負責數據接收和發送。

(2)基帶模塊(BaseBand):無線介質訪問約定。提供同步面向連接的物理鏈路(SCO)和非同步無連接物理鏈路(ACL),負責跳頻和藍牙數據及信息幀傳輸,並提供不同層次的糾錯功能(FEC和CTC)。

(3)鏈路控制模塊(LC):藍牙數據包的編碼和解碼。

(4)鏈路管理模塊(LM):負責創建、修改和發布邏輯鏈接,更新設備間物理鏈接參數,進行鏈路的安全和控制。

(5)主機控制器介面(HCI):是軟硬體介面部分,由基帶控制器、連接管理器、控制和事件寄存器等組成;軟體介面提供了下層硬體的統一命令,解釋上下層消息和數據的傳遞。硬體介面包含UART、SPI和USB等。

4.2.中間協議層

(1)邏輯鏈路控制與適配協議(L2CAP):藍牙協議棧的基礎,也是其他協議實現的基礎。向上層提供面向連接和無連接的數據封裝服務;採用了多路技術、分割和重組技術、組提取技術來進行協議復用、分段和重組、認證服務質量、組管理等行為。

(2)音視頻發布傳輸協議(AVDTP)和音視頻控制傳輸協議(AVCTP):二者主要用於Audio/Video在藍牙設備中傳輸的協議,前者用於描述傳輸,後者用於控制信號交換的格式和機制。

(3)服務發現協議(SDP):藍牙技術框架至關重要一層,所有應用模型基礎。動態的查詢設備信息和服務類型,建立一條對應的服務通信通道,為上層提供發現可用的服務類型和屬性協議信息。

(4)串口模擬協議(RFCOMM):實現了模擬9針RS232串口功能,實現設備間的串列通信。

(5)二進位電話控制協議(TCS):基於 ITU-T Q.931 建議的採用面向比特的協議,它定義了用於藍牙設備之間建立語音和數據呼叫的控制信令(Call Control Signalling),並負責處理藍牙設備組的移動管理過程。

4.3.藍牙Profile

Bluetooth Profile是藍牙設備間數據通信的無線介面規範。目前有四大類、十三種協議規則,廠商可以自定義規格。幾種最常見的Profile文件:

(1)通用訪問配置文件(GAP):其他所有配置文件的基礎,定義了在藍牙設備間建立基帶鏈路的通用方法,並允許開發人員根據GAP定義新的配置文件。包含所有藍牙設備實施的功能,發現和連接設備的通用步驟,基本用戶界面等通用操作。

(2)服務發現應用配置文件(SDAP):描述應用程序如何用SDP發現遠程設備服務,可與向/從其他藍牙設備發送/接收服務查詢的SDP連接。

(3)串列埠配置文件(SPP):基於ETSI TS 07.10規格定義如何設置虛擬串列埠及如何連接兩個藍牙設備。速度可達128kb/s。

(4)通用對象交換配置文件(GOEP):可以將任意對象(如圖片、文檔等)從一個設備傳輸到另一個設備。

5、藍牙協議棧層次

5.1.物理層(PHY):射頻傳輸。

5.2.鏈路層(LL):控制射頻狀態,包括等待、廣告、掃描、初始化、連接。

5.3.主機控制介面層(HCI):主機和控制器通信介面。

5.4.邏輯鏈路控制及適配協議層(L2CAP):提供數據封裝服務,允許邏輯上點對點通信。

5.5.安全管理層(SM):加解密,為安全連接和數據交換提供服務。

5.6.屬性協議層(ATT):允許設備(伺服器)向另一個設備(客戶端)展示特定的數據(屬性)。

5.7.通用屬性配置文件層(GATT):定義了使用ATT的服務框架,兩個建立連接的設備之間的所有數據通信都是通過GATT子程序處理。

5.8.通用訪問配置文件層(GAP):對所有藍牙設備提供共同的功能,如傳輸模式和訪問程序、協議和應用描述。GAP服務包含設備發現、連接模式、安全、認證、聯合模型和服務發現。

6、藍牙傳輸過程

6.1.主從機建立過程

6.2.主從通信透傳模塊

分為主透傳協議模塊(MTTM)和從透傳協議模塊(STTM)。

MTTM可以工作在透傳模式(TTM)和指令模式(CM),工作如下:用戶通過AT指令控制模塊連接從設備。在成功建立鏈接後,MTTM自動查找從設備的透傳通道,如果從設備屬於STTM,MTTM默認進入TTM,否則進入CM。

透傳模式,目的是實現透傳或直驅控制功能,主機CPU可以通過通用串口模塊與STTM雙向通信,MTTM直接將數據轉發給STTM,再從STTM串口輸出到從機CPU。反向亦可。


推薦閱讀:
相關文章