無線收發芯片esp32藍牙模組藍牙名字由來以及相關術語,什么是藍牙,藍牙是一種支持設備短距離通信的無線通信技術,早由愛立信公司于 1994 年發明。藍牙目標是使各類移動設備、嵌入式設備、計算機外設和家用電器等眾多設備之間在沒有電績接的情況下能夠在短距離范圍內實現信息的自由傳輸與分享。相較于其他無線通信技術,藍牙具有安全性高、易于連接等優勢。
藍牙名字的由來,藍牙(Bluetooth) 一詞取自于10 世紀丹麥國王哈拉爾的名字--Harald Bluetooth。哈拉爾國王由于統一斯堪的納維亞半島而聞名于世。傳說哈拉爾國王特別喜歡吃藍莓,吃得使牙齒都變成藍色了,因而人們把這位國王的牙齒稱為藍牙(Bluetooth)。1996 年,英特爾諾基亞、愛立信成立了特別興趣小組 (SIG)。特別興趣小組 (SIG) 的名稱就叫藍牙(Bluetooth)。藍牙這個名字很快流行起來,成為了短距離無線通信技術的代名詞。
無線收發芯片esp32藍牙模組藍牙采用分散式網絡結構以及快跳頻和短包技術,支持點對點及點對多點的通信,工作在全球通用的 2.4 GHZISM(即工業、科學、醫學)頻段。藍牙可分為經典藍牙和低功耗藍牙:
(1)經典藍牙。無線收發芯片esp32藍牙模組經典藍牙 (BR/EDR)泛指支持藍牙協議在4.0版本以下的模塊,一般用于如語音、音樂等大數據量的傳輸。經典藍牙的協議包含了個人局域網的各種規范 (Profile),不同同的規范對應于不同的應用場景,比較常用的有:適用于音頻的 Advanced Audio DistributioProfile (A2DP)、適用于免提設備的 Hands-Free Profile/Head-Set Profile (HFP/HSP)、適于文本串口透傳的 Serial Port Profile (SPP)、適用于無線輸入/輸出設備的 Human InterfacDevice (HID) 。
(2)低功耗藍牙。無線收發芯片esp32藍牙模組低功耗藍牙(Bluetooth Low Energy,Bluetooth LE) 是一種新型的超低功無線通信技術,主要針對低成本、低復雜度的無線體域網和無線個域網設計,主要的優點之一是可以用紐扣電池為低功耗藍牙芯片供電,結合微型傳感器構建出各種嵌入式傳感器或可穿戴式傳感器與傳感器網絡應用。
總體來看,藍牙協議版本有兩個分支,分別是經典藍牙和低功耗藍牙。其中,藍牙 1.1、2.0、2.1、3.0 版本屬于經典藍牙,4.0 版本的藍牙包括經典藍和低功耗藍牙,4.0 版本以的藍牙添加了低功耗藍牙。
藍牙相關術語,本文將介紹藍牙涉及的無線網絡技術,包括核心體系結構和藍牙規范中的組件。
藍牙的核心系統主要由主機 (Host)、控制器 (Controller)、主機控制接口 (Host ControllerInterface,HCI)構成:Host 主要用于實現各種業務場景需求,大部分的開發工作都是在 Host上進行的;Controller 主要用于藍牙報文的收發,以及藍牙物理連接的管理等基本功能,由專門的藍牙芯片廠商負責實現。
Host 和 Controller 初的設計理念是將這兩個模塊單獨運行在兩顆不同的芯片甚至系統上,兩者之間通過主機控制接口進行通信,以方便替換和升級。雖然現在有不少芯片把 Host 和Controller 都放在一顆芯片上,但基本還遵循這樣的層次結構,只是將 HCI協議從硬件通信端口換成了軟件端口。
無線收發芯片esp32藍牙模組低功耗藍牙協議棧包含物理層(Physical Layer,PHY)、鏈路層(Link Layer,LL)、邏輯鏈路控制和適配協議(Logical Link Control and Adaptation Protocol,L2CAP)、屬性協議(AttributeProtocol,ATT)、安全管理器協議(Security Manager Protocol,SMP)通用屬性配置文件(GenericAttribute Profile,GATT)、通用訪問配置文件(Generic Access Profile,GAP)等。
1、PHY 用來指定低功耗藍牙所用的無線頻段、調制解調方式等。PHY 做得好不好,將直接決定整個低功耗藍牙芯片的功耗,靈敏度以及 selectivity 等射頻指標的好壞。
2、LL 只負責把數據發送出去或者接收回來,對數據進行怎樣的解析則交給上面的 GAP 或者ATT 處理。LL 要處理的事情非常多,如選擇什么程度的射頻通道進行通信、怎么識別空中數據包、具體在哪個時間點將數據包發送出去、如何保證數據的完整性、如何對鏈路進行管理和控制、ACK 如何接收、重傳等,是整個低功耗藍牙協議棧的核心。
3、HCI是Hos 和Conmolrer之間的通信接口。HCI 可以是物理形式的,如 UART、USB常見于雙芯片架構:也可以直接通過APT實現,常見于單芯片架構。
4、L2CAP 向上層協議(協議復用、分、重組作)提供連接導向和無連接的數服并按通道進行流量控制和重傳。
5、ATT 主要用來定義用戶命今以及命今操作的數據,如讀取或者寫入。無線收發芯片esp32藍牙模組低功耗藍牙協議格入廣Atrbue概。用于精法一條條的數據。無線收發芯片esp32藍牙模組ATT 除了定義數據,同時也定義該數據可用的 ATT 命令,是讀者接觸多的部分。
6、SMP 負責管理低耗藍牙連接的加密和安全,既保證連接的安全性,同時又不影響使用的體驗。
7、GATT用來規范Atribute 中的數據內容,并運用分組(Group)的概念對Attribute 進行類管理。當然,沒有 GATT,也能跑低功耗藍牙協議棧,只是會在互聯互通上出問題。正因為有了GATT 和各種各樣的應用 Profile,Bluetooth LE 才擺脫了 ZigBee 等無線協議的兼性困境。
8、GAP對 LL 的有效數據包進行了一些規范和定義,是解析 LL負載數據簡單的一種方式因此 GAP 能實現的功能極其有限,主要用來進行廣播、掃描和發起連接等。