![]() | | |
藍牙概述
從這一章節開始我們嘗試去系統了解藍牙協定棧,在這之前我們需要儲備以下知識點。
藍牙
藍牙是一種短距離的無線通信技術,設計之初是為了取代有線連接配接,其魯棒性、低功耗、低成本特性已經讓其廣泛應用各種終端産品。
藍牙核心規範是根據不同終端産品可選擇、可裁剪的。根據功耗和速率主要被設計兩種裝置類型——LE和BR,兩種裝置都實作裝置發現、連接配接建立、連接配接機制。同時BR無線系統還包含一個可選擇的EDR裝置類型,EDR又包含一個二選一的MAC層以及可擴充的PHY層,基于這些設計BR的速率可以達到721.2kb/s,EDR可以達到2.1Mbps以及工作在高速模式的802.11AMP 54Mbps。
藍牙發展至今,已經從1.0到現在5.0版本了,前面3個版本藍牙主要是以BR/EDR/HS發展,也就是我們常說的經典藍牙,4.0版本後引入LE,藍牙技術聯盟(Bluetooth Special Interest Group,簡稱SIG)維護着藍牙核心規範。我們不難看出,從高速AMP直接使用802.11 PHY,還是低功耗參考使用802.15.4以及最新标準的藍牙5.0協定,SIG一直在功耗、速率、和最新的物聯網功能上面平衡。
注意:注意區分BLE、BR、EDR等特定術語,區分低功耗藍牙和經典藍牙。
藍牙核心系統由兩個邏輯實體Host&Controller組成,一個Host對應一個或者多個Controller,Host和Controller之間通過HCI接口層互動。Controller對應兩種類型:Primary Controllers 和Secondary Controllers。通常來說Primary Controllers隻有一個,Secondary Controllers可能有多個。
- 對于BR/EDR 藍牙裝置類型,Controller通常包含 無線電處理、基帶、鍊路管理、和可選擇的HCI接口層;
- 對應LE Controller主要包含LE PHY、鍊路層、和可選擇的HCI;
- 通常來說我們還可以合并BR/EDR Controller 和LE Controller到一個Controller,也就是我們常說的雙模藍牙。
上圖完整了示範了LE核心系統、BR/EDR核心系統、帶Secondary Controller AMP的BR/EDR核心系統、以及合并LE&BR/EDR的雙模藍牙系統。
LE
信道
BLE 工作在無需認證的2.4G免費頻段,該頻段廣泛應用于ISM(工業、科學、醫療)領域。通過跳頻通信實作抗幹擾特性,GFSK調制,采用1Mbps碼元率PHY層設計,可以實作1Mbps波特率通信,BLE5.0優化的實體層可以工作在2Mbps碼元率。
2.4G的頻段按照每2M帶寬劃分為40個信道,通過FDMA(頻分多址)和TDMA(時分多址)實作多路通路信道資源。
信道資源被我們約定的
Events
劃分為以時間機關通路,我們的有效資料也包含在這些
Events
裡面,
Events
以連接配接狀态為區分,包含未連接配接的
Advertising Events
和已經連接配接的
Connection events
在實體信道發送廣播包的裝置我們稱為
Advertisers
,接收到該廣播包但是還沒有建立連接配接意圖前的裝置我們稱為
Scanners
。如下圖所示,
Advertisers
在3個廣告信道(可配置)輪詢發生
Advertising Events
,
Scanners
接收到該廣告包後可能在該信道可能發生事件類型的為
ScanReq
的掃描請求和
ScanRsp
掃描回複。
如果此時
Scanner
産生了嘗試建立連接配接請求,
Scanner
身份切換為為
Initiators
。
Initiators
會在接收到
Advertising Events
産生一個時間類型為
Connect
的連接配接請求。一旦建立連接配接請求,
Advertiser
和
Initiators
分别切換為
Slave
和
Master
。
在建立連接配接的時候,Master會基于某種算法産生一個跳頻序列,保證在37個資料信道按照某個序列進行跳頻切換,以及雙方會約定一個跳頻間隔,保證通信雙方在固定時間在固定信道相遇。
分層設計
如上圖所示:
Controller
- LinkManager、LinkController、BR/EDR Radio組成 BR/EDR Controller;
- AMP PAL 、AMP MAC、 AMP PHY 組成AMP Controller;
- Link Manager,Link Controller、LE Radio 組成 LE Controller;
Host
- L2CAP、SDP、GAP 組成 BR/EDR Host;
- L2CAP、SMP、Attribute protocol、GAP GATT組成LE Host;
加入我們
文章所有代碼、工具、文檔開源。加入我們QQ群 591679055擷取更多支援,共同研究CC2640R2F&BLE5.0。
© Copyright 2017, 成都樂控暢聯科技有限公司.