0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)之【藍(lán)牙HCI與藍(lán)牙hld】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-01-30 17:37 ? 次閱讀

1. 簡介

藍(lán)牙的命名來源于一個丹麥國王的名字。

藍(lán)牙的核心是短距離無線電通訊,它的基礎(chǔ)來自于跳頻擴(kuò)頻(FHSS)技術(shù)。

頻率:[2.4GHz, 2.4GHz + 83.5MHz]

物聯(lián)網(wǎng)領(lǐng)域需要研究Bluetooth + Mesh。

分類

兩種:

  • 經(jīng)典/傳統(tǒng)藍(lán)牙(< 4.0版本);
  • BLE低功耗藍(lán)牙。

IoT中,ble更常見一些;經(jīng)典藍(lán)牙常用于手機(jī)和耳機(jī)的通信。

芯片模式有兩種:

  • 雙模,就是支持以上兩種,應(yīng)用有降噪耳機(jī)、電視語音遙控及按鍵;
  • 單模則是只支持一種,通常是支持BLE。

發(fā)展

開始于愛立信在 1994 年提出的無線通信方案,以解決用戶間互不兼容的移動電子設(shè)備的通信問題,用于替代 RS-232 串口通訊標(biāo)準(zhǔn)。

第一代藍(lán)牙(傳輸率0.7Mbps):

  1. 1999 年,藍(lán)牙 1.0A 版,確定使用 2.4GHz 頻段, 藍(lán)牙硬件地址叫做BD_ADDR;
  2. 2001 年:藍(lán)牙 1.1,藍(lán)牙 1.1 版正式列入 IEEE 802.15.1 標(biāo)準(zhǔn),定義了物理層和MAC層;

第二代藍(lán)牙:

  1. 2004 年,藍(lán)牙 2.0,新增的 EDR (Enhanced Data Rate)使得藍(lán)牙設(shè)備的傳輸率可達(dá) 3Mbps;支持雙工,可以邊電話邊傳輸數(shù)據(jù);
  2. 2007 年,藍(lán)牙 2.1,支持 NFC ,新增SSP(Secure Simple Pairing)安全配對,新增SniffSubrating省電功能;

2009 年, 3.0 (比較穩(wěn)定了),可調(diào)用 802.11 WiFi,傳輸速率高達(dá) 24Mbps。藍(lán)牙 3.0 的核心是 AMP(Generic Alternate MAC/PHY)。代表作是藍(lán)牙適配器。

第四代

  1. 2010 年,4.0,支持BLE(Bluetooth Low Energy,基于 NOKIA 開發(fā)的 Wibree 技術(shù))低功耗功能,傳輸距離提升到100米以上。代表作,iphone 4s;
  2. 2013 年,4.1支持云功能(可以用于iot了),支持IPv6,支持區(qū)中心(例如智能手表和計步器可以繞過智能手機(jī),直接連接);
  3. 2014年,4.2,可以拋棄wifi,iot設(shè)備完全用藍(lán)牙;

4.0之前的都是經(jīng)典藍(lán)牙,>=4.0的才支持BLE。

2016 年, 藍(lán)牙 5.0 ,iot入場,速度上限為 2Mbps,傳輸距離理論上可達(dá) 300 米,結(jié)合 WiFi 可以實現(xiàn)精度小于 1 米的室內(nèi)定位;針對 IoT 物聯(lián)網(wǎng)進(jìn)行底層優(yōu)化;引入Mesh網(wǎng)絡(luò)。


說下 Mesh 。

Mesh 網(wǎng)狀網(wǎng)絡(luò)能夠?qū)⑺{(lán)牙設(shè)備作為信號中繼站,數(shù)據(jù)覆蓋廣,兼容藍(lán)牙 4 和 5 系列的協(xié)議。

傳統(tǒng)的藍(lán)牙連接是通過 配對 實現(xiàn)的,即 [一對一] 或 [一對多] 的微型網(wǎng)絡(luò)關(guān)系。

Mesh 網(wǎng)絡(luò)能夠使設(shè)備實現(xiàn)「多對多」的關(guān)系。

產(chǎn)品架構(gòu)

3種:

  1. 藍(lán)牙芯片(含藍(lán)牙協(xié)議棧host)直接與外設(shè)通信,這類芯片可作MCU,如藍(lán)牙耳機(jī)、藍(lán)牙音響、藍(lán)牙手環(huán);
  2. 藍(lán)牙芯片(含藍(lán)牙協(xié)議棧host)—MCU—外設(shè),一般用于外設(shè)功能復(fù)雜的場景,
  3. 藍(lán)牙芯片(controller)—MCU(含host)—外設(shè),是藍(lán)牙最復(fù)雜的方案,客戶需要使用很多藍(lán)牙協(xié)議,比如車載藍(lán)牙、手機(jī)藍(lán)牙。

組成

藍(lán)牙設(shè)備:

  • 硬件層,即Controller藍(lán)牙模塊(由低到高排序):
  • 無線射頻單元Radio,一種微帶天線;
  • 基帶BaseBand或鏈路控制單元LinkController,進(jìn)行射頻信號與數(shù)字或語音信號的相互轉(zhuǎn)化;
  • 鏈路管理單元LinkManager,管理藍(lán)牙設(shè)備之間的通信;
  • 主機(jī)控制器Host Controller
  • TRANSPORT層,實現(xiàn)HOST跟CONTROLLER的交互,有H2(USB使用), H4/H5/BCSP(UART使用)協(xié)議。5種數(shù)據(jù):
  • HCI COMMAND:由藍(lán)牙協(xié)議棧發(fā)送給芯片的命令
  • HCI EVENT:由藍(lán)牙芯片上報給藍(lán)牙協(xié)議棧的事件
  • HCI ACL:藍(lán)牙協(xié)議棧跟藍(lán)牙芯片雙向交互的普通數(shù)據(jù)
  • HCI SCO:藍(lán)牙芯片跟藍(lán)牙協(xié)議棧雙向交互的通話/語音識別音頻數(shù)據(jù)
  • HCI ISO(這部分是在core5.2才添加):LE audio用的數(shù)據(jù)包格式
  • HOST層,即藍(lán)牙協(xié)議棧,或者說藍(lán)牙主機(jī),:
  • 主機(jī)控制接口(HCI),透過transport把協(xié)議棧的數(shù)據(jù)發(fā)送給藍(lán)牙芯片;
  • 高層協(xié)議Higher Layer Protocol;
  • Application

一些藍(lán)牙模塊:

JDY-10M模塊,含底板+藍(lán)牙模塊,十幾塊錢,供電建議5V。兩種接法:

M是Mesh的意思,JDY-10就是不支持組網(wǎng)的版本.

2. 協(xié)議

初學(xué)者先學(xué)藍(lán)牙host(藍(lán)牙協(xié)議棧),再學(xué)controller(藍(lán)牙芯片)里面的協(xié)議。

藍(lán)牙協(xié)議有很多,藍(lán)牙電話(HFP),藍(lán)牙音頻(A2DP),藍(lán)牙音樂控制(AVRCP),藍(lán)牙電話本(PBAP),藍(lán)牙短信(MAP),BLE,HID…

藍(lán)牙協(xié)議分為傳輸協(xié)議、中介協(xié)議和應(yīng)用協(xié)議:

  • 傳輸協(xié)議:互相確認(rèn)對方的位置,建立和管理物理鏈路;
  • 底層傳輸協(xié)議,包括Radio, Baseband&Link Controller, Link Manager Protocol等;
  • 高層傳輸協(xié)議,包括L2CAP, HCI;
  • 中介協(xié)議:為應(yīng)用提供不同標(biāo)準(zhǔn)接口;
  • 應(yīng)用協(xié)議:協(xié)議棧之上的應(yīng)用軟件所涉及到的協(xié)議。

2.1 傳輸協(xié)議

L2CAP

Logical Link Control and Adaptation Protocol,邏輯鏈路控制與適配協(xié)議。

位于基帶之上

2.2 中介協(xié)議

SDP

Service Discover Protocol,服務(wù)發(fā)現(xiàn)協(xié)議,發(fā)現(xiàn)哪些服務(wù)可用,并確定這些可用服務(wù)的特征

RFCOMM

Serial Port Emulation,串口仿真協(xié)議,為建立在串口之上的傳統(tǒng)應(yīng)用提供環(huán)境接口,用于藍(lán)牙電話,藍(lán)牙透傳SPP等。

AT指令

AT指令是區(qū)分大小寫的ascii碼,以r結(jié)束。

像mesh那樣,要在組網(wǎng)中實現(xiàn)通信,就不能用at那樣的ascii指令了,而要用特定的二進(jìn)制協(xié)議格式。

只能在透傳模式下工作(設(shè)備連接手機(jī)后進(jìn)入透傳模式,手機(jī)是服務(wù)端)。

2.3 其它(分類不太確定)

HFP

Hands-Free,藍(lán)牙免提協(xié)議,用于藍(lán)牙耳機(jī)。還有一個已經(jīng)基本廢棄的HSP,藍(lán)牙耳機(jī)協(xié)議。

OBEX,對象交換協(xié)議,用于藍(lán)牙電話本,藍(lán)牙短信,文件傳輸?shù)取?/p>

SPP(SERIAL PORT PROFILE):藍(lán)牙串口協(xié)議。

IAP:蘋果的特有協(xié)議,用于Carplay。

PBAP(Phone Book Access):藍(lán)牙電話本訪問協(xié)議。

MAP(Message Access Profile):藍(lán)牙短信訪問協(xié)議。

OPP(Object Push Profile):對象推送協(xié)議.

A2DP(Advanced Audio Distribution): 藍(lán)牙音樂協(xié)議.

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 藍(lán)牙
    +關(guān)注

    關(guān)注

    114

    文章

    5724

    瀏覽量

    169137
  • HCI
    HCI
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    12918
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2294

    瀏覽量

    42633
收藏 人收藏

    評論

    相關(guān)推薦

    什么是藍(lán)牙芯片?藍(lán)牙芯片和藍(lán)牙模塊的區(qū)別

    藍(lán)牙芯片是集成藍(lán)牙技術(shù)的微型元件,用于設(shè)備間無線連接。藍(lán)牙模塊基于芯片,簡化藍(lán)牙系統(tǒng)設(shè)計。芯片成本低但開發(fā)難,模塊無需認(rèn)證且使用簡單,提供更
    的頭像 發(fā)表于 07-18 16:48 ?1511次閱讀
    什么是<b class='flag-5'>藍(lán)牙</b>芯片?<b class='flag-5'>藍(lán)牙</b>芯片和<b class='flag-5'>藍(lán)牙</b>模塊的區(qū)別

    鴻蒙開發(fā)通信與連接:ohos.bluetooth藍(lán)牙

    藍(lán)牙模塊提供了基礎(chǔ)的傳統(tǒng)藍(lán)牙能力以及BLE的掃描、廣播等功能。
    的頭像 發(fā)表于 06-20 09:31 ?486次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>通信與連接:ohos.bluetooth<b class='flag-5'>藍(lán)牙</b>

    國產(chǎn)藍(lán)牙模組 | 低功耗藍(lán)牙應(yīng)用

    藍(lán)牙技術(shù)聯(lián)盟于2010年推出了藍(lán)牙4.0規(guī)范,其中低功耗藍(lán)牙的出現(xiàn)滿足了小型電池供電設(shè)備進(jìn)行低功耗無線連接的需求,因此得到廣泛應(yīng)用。本文章將帶你深入了解低功耗藍(lán)牙的應(yīng)用。低功耗
    的頭像 發(fā)表于 06-14 08:25 ?383次閱讀
    國產(chǎn)<b class='flag-5'>藍(lán)牙</b>模組 | 低功耗<b class='flag-5'>藍(lán)牙</b>應(yīng)用

    如何使用支持標(biāo)準(zhǔn)藍(lán)牙HCI命令的定制BLE模塊(如 DA14531)來代替ModusToolbox支持的藍(lán)牙模塊?

    如何使用支持標(biāo)準(zhǔn)藍(lán)牙 HCI 命令的定制 BLE 模塊(如 DA14531)來代替 Modus Toolbox 支持的藍(lán)牙模塊? 我正在使用 Modus Toolbox 3.2 和 CY8C62x5 MCU 進(jìn)行
    發(fā)表于 06-03 07:05

    藍(lán)牙模塊選型藍(lán)牙版本

    ? ? ? ?藍(lán)牙模塊作為一種小范圍無線連接技術(shù),具有低功耗、低成本、方便快捷的特點,被廣泛應(yīng)用于無線耳機(jī)、智能手表、無線遙控等場景,是實現(xiàn)無線通信的主流技術(shù)之一。 ? ? ? ?藍(lán)牙模塊由于集成
    的頭像 發(fā)表于 05-30 10:00 ?515次閱讀
    <b class='flag-5'>藍(lán)牙</b>模塊選型<b class='flag-5'>之</b><b class='flag-5'>藍(lán)牙</b>版本

    藍(lán)牙模塊選型藍(lán)牙功能

    藍(lán)牙模塊,是一種集成藍(lán)牙功能的PCBA板,用于短距離無線通訊,藍(lán)牙模塊將芯片和外圍硬件電路集成到一個PCB上,開發(fā)出所需的內(nèi)置程序?qū)崿F(xiàn)藍(lán)牙
    的頭像 發(fā)表于 05-28 17:48 ?551次閱讀
    <b class='flag-5'>藍(lán)牙</b>模塊選型<b class='flag-5'>之</b><b class='flag-5'>藍(lán)牙</b>功能

    藍(lán)牙模塊選經(jīng)典藍(lán)牙還是低功耗藍(lán)牙

    ? 經(jīng)典藍(lán)牙(classic Bluetooth)和低功耗藍(lán)牙(Bluetooth low energy,簡稱BLE或者LE),兩者有什么區(qū)別?為什么他們都叫“藍(lán)牙”?Bluetooth low
    的頭像 發(fā)表于 05-23 17:57 ?857次閱讀
    <b class='flag-5'>藍(lán)牙</b>模塊選經(jīng)典<b class='flag-5'>藍(lán)牙</b>還是低功耗<b class='flag-5'>藍(lán)牙</b>?

    鴻蒙NEXT南向開發(fā)案例:【智能臺燈】

    鴻蒙南向開發(fā)智能臺燈案例
    的頭像 發(fā)表于 04-03 18:00 ?884次閱讀
    <b class='flag-5'>鴻蒙</b>NEXT南向<b class='flag-5'>開發(fā)</b>案例:【智能臺燈】

    鴻蒙開發(fā)實戰(zhàn):【藍(lán)牙組件】

    藍(lán)牙服務(wù)組件為設(shè)備提供接入與使用Bluetooth的相關(guān)接口,包括BLE設(shè)備gatt相關(guān)的操作,以及BLE廣播、掃描等功能。
    的頭像 發(fā)表于 03-13 17:27 ?591次閱讀

    藍(lán)牙模塊CYW20706上下載應(yīng)用程序到串行閃存失敗了的原因?

    我嘗試在藍(lán)牙模塊CYBT-343026-01(CYW20706)上下載應(yīng)用程序到串行閃存,但失敗了。 第一步是按照 AIROC? HCI UART 控制協(xié)議文檔(見下文)的指示向模塊發(fā)送
    發(fā)表于 03-01 11:59

    在Modustoolbox下開發(fā)cyw20719B2的藍(lán)牙應(yīng)用, BTSDK是否可剪裁?

    請問,在Modustoolbox 下開發(fā)cyw20719B2的藍(lán)牙應(yīng)用,很多功能并不需要,比如:ADC, I2S, HCI UART... ... BTSDK是否可剪裁掉這些功能,以節(jié)省RAM空間,降低功耗?
    發(fā)表于 03-01 09:09

    芯科科技發(fā)布新版藍(lán)牙開發(fā)流程

    查看Silicon Labs(亦稱“芯科科技”)近日發(fā)布新版的藍(lán)牙開發(fā)流程(Bluetooth Developer Journey),了解更多關(guān)于低功耗藍(lán)牙藍(lán)牙Mesh、
    的頭像 發(fā)表于 01-25 10:09 ?654次閱讀
    芯科科技發(fā)布新版<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>開發(fā)</b>流程

    【應(yīng)用筆記】STM32WB 低功耗藍(lán)牙無線接口

    ,同時保持了相似的通信范圍。標(biāo)準(zhǔn) HCI 指令在“藍(lán)牙核心規(guī)范 V5.3”(藍(lán)牙?低功耗規(guī)范是其中一部分)中定義。此應(yīng)用筆記描述了專有指令。
    發(fā)表于 12-12 16:30 ?1次下載

    STM32WB55開發(fā)(3)----斷開藍(lán)牙連接

    了解如何通過aci_hal_get_link_status函數(shù)獲取當(dāng)前的藍(lán)牙連接狀態(tài),然后,我們將使用hci_disconnect函數(shù)來斷開這些連接。
    的頭像 發(fā)表于 12-01 15:43 ?964次閱讀
    STM32WB55<b class='flag-5'>開發(fā)</b>(3)----斷開<b class='flag-5'>藍(lán)牙</b>連接

    藍(lán)牙低功耗系統(tǒng)的開發(fā)

    電子發(fā)燒友網(wǎng)站提供《藍(lán)牙低功耗系統(tǒng)的開發(fā).pdf》資料免費(fèi)下載
    發(fā)表于 11-10 16:16 ?2次下載
    <b class='flag-5'>藍(lán)牙</b>低功耗系統(tǒng)的<b class='flag-5'>開發(fā)</b>