【Bluetooth開(kāi)發(fā)】一、藍(lán)牙開(kāi)發(fā)入門(mén)
藍(lán)牙設(shè)備在生活中無(wú)處不在,但是我們也只是將其作為藍(lán)牙模塊進(jìn)行使用,發(fā)送簡(jiǎn)單的AT命令實(shí)現(xiàn)數(shù)據(jù)收發(fā)。
那么,像對(duì)于一些復(fù)雜的使用場(chǎng)合:“車(chē)載藍(lán)牙”、"智能手表"、“藍(lán)牙音箱”等,我們不得不去了解底層的藍(lán)牙實(shí)現(xiàn)原理。
-
1、藍(lán)牙概念
-
2、藍(lán)牙發(fā)展歷程
-
3、藍(lán)牙技術(shù)概述
-
3.1 Basic Rate(BR)
-
3.2 Low Energy(LE)
-
4、常見(jiàn)藍(lán)牙架構(gòu)
-
4.1 SOC藍(lán)牙單芯片方案
-
4.2 SOC藍(lán)牙+MCU方案
-
4.3 藍(lán)牙host + controller分開(kāi)方案
-
4.4 使用場(chǎng)景
-
5、參考文檔
1藍(lán)牙概念
藍(lán)牙,是一種利用低功率無(wú)線電,支持設(shè)備短距離通信的無(wú)線電技術(shù),能在包括移動(dòng)電話、PDA、無(wú)線耳機(jī)、筆記本電腦、相關(guān)外設(shè)等眾多設(shè)備之間進(jìn)行無(wú)線信息交換,藍(lán)牙工作在全球通用的2.4GHz ISM(即工業(yè)、科學(xué)、醫(yī)學(xué))頻段,使用IEEE802.11協(xié)議。
2藍(lán)牙發(fā)展歷程
自1994年由愛(ài)立信推出至今,藍(lán)牙技術(shù)已經(jīng)走過(guò)了20個(gè)歲月。從最初的Bluetooth V1.0,到Bluetooth V5.2,經(jīng)歷了近9個(gè)版本的修訂后,發(fā)展為當(dāng)前的狀況。
“藍(lán)牙”的形成背景是這樣的:
1998 年 5 月,愛(ài)立信、諾基亞、東芝、 IBM和英特爾公司等五家著名廠商, 在聯(lián)合開(kāi)展短程無(wú)線通信技術(shù)的標(biāo)準(zhǔn)化活動(dòng)時(shí)提出了藍(lán)牙技術(shù),其宗旨是提供一種短距離、 低成本的無(wú)線傳輸應(yīng)用技術(shù)。
芯片霸主 Intel 公司負(fù)責(zé)半導(dǎo)體芯片和傳輸軟件的開(kāi)發(fā),愛(ài)立信負(fù)責(zé)無(wú)線射頻和移動(dòng)電話軟件的開(kāi)發(fā), IBM 和東芝負(fù)責(zé)筆記本電腦接口規(guī)格的開(kāi)發(fā)。
1999 年下半年,著名的業(yè)界巨頭微軟、摩托羅拉、三星、朗訊與藍(lán)牙特別小組的五家公司共同發(fā)起成立了藍(lán)牙技術(shù)推廣組織,從而在全球范圍內(nèi)掀起了一股“藍(lán)牙”熱潮。
全球業(yè)界即將開(kāi)發(fā)一大批藍(lán)牙技術(shù)的應(yīng)用產(chǎn)品, 使藍(lán)牙技術(shù)呈現(xiàn)出極其廣闊的市場(chǎng)前景,并預(yù)示著 21 世紀(jì)初將迎來(lái)波瀾壯闊的全球無(wú)線通信浪潮。
-
第一代藍(lán)牙:關(guān)于短距離通訊早期的探索,使用的是BR技術(shù),此時(shí)藍(lán)牙的理論傳輸速率,只能達(dá)到721.2Kbps。
-
第二代藍(lán)牙:新增的 EDR(Enhanced Data Rate)技術(shù),使得藍(lán)牙設(shè)備的傳輸率可達(dá) 3Mbps。
-
第三代藍(lán)牙:核心是 AMP(Generic Alternate MAC/PHY),這是一種全新的交替射頻技術(shù),支持動(dòng)態(tài)地選擇正確射頻,傳輸速率高達(dá) 24Mbps
-
第四代藍(lán)牙:主推” Low Energy”低功耗, BLE(Bluetooth Low Energy)低功耗功能
-
第五代藍(lán)牙:開(kāi)啟「物聯(lián)網(wǎng)」時(shí)代大門(mén),在低功耗模式下具備更快更遠(yuǎn)的傳輸能力
3藍(lán)牙技術(shù)概述
藍(lán)牙協(xié)議包括兩種技術(shù):BR:Basic Rate和LE:Low Energy。這兩種技術(shù)都包括搜索(discovery)管理、連接(connection)管理等機(jī)制,但它們是不能互通的!
廠商如果只實(shí)現(xiàn)了一種,那么只能與同樣實(shí)現(xiàn)該技術(shù)的設(shè)備互通。
如果廠商要確保能和所有的藍(lán)牙設(shè)備互通,那么就只能同時(shí)實(shí)現(xiàn)兩種技術(shù),而不去管是否真的需要。
BR:Basic Rate是正宗的藍(lán)牙技術(shù),可以包括可選(optional)的EDR(Enhanced Data Rate)技術(shù),以及交替使用的(Alternate)的MAC(Media Access Control)層和PHY層擴(kuò)展(簡(jiǎn)稱(chēng)AMP(Alternate MAC and PHY layer extension))。
-
BR:最早期的藍(lán)牙技術(shù),速度只能達(dá)到721.2Kbps,在那個(gè)年代,已為高大上了。
-
EDR:隨著技術(shù)的提升,使用EDR技術(shù)的藍(lán)牙,理論速率可以達(dá)到2.1Mbps。
-
AMP:使用AMP技術(shù)的藍(lán)牙,理論速率可以達(dá)到54Mbps。
AMP的Alternate交替使用體現(xiàn)在:由于藍(lán)牙自身的物理層和AMP技術(shù)差異太明顯,BR/EDR和AMP是不能同時(shí)使用的。
簡(jiǎn)單的說(shuō),就是:BR和EDR是可以同時(shí)存在的,但BR/EDR和AMP只能二選一
3.2Low Energy(LE)
上面所講的BR技術(shù)的進(jìn)化路線,就是傳輸速率的加快、加快、再加快。但能量是守恒的,你想傳的更快,代價(jià)就是消耗更多的能量。而有很多的應(yīng)用場(chǎng)景,并不關(guān)心傳輸速率,反而非常關(guān)心功耗。這就是Bluetooth LE(稱(chēng)作藍(lán)牙低功耗)產(chǎn)生的背景。
從它的英文名字上就可以看出它是一種低功耗藍(lán)牙技術(shù),是藍(lán)牙技術(shù)聯(lián)盟設(shè)計(jì)和銷(xiāo)售的一種個(gè)人局域網(wǎng)技術(shù),旨在用于醫(yī)療保健、運(yùn)動(dòng)健身、信標(biāo)、安防、家庭娛樂(lè)等領(lǐng)域的新興應(yīng)用。
低功耗藍(lán)牙與經(jīng)典藍(lán)牙使用相同的2.4GHz無(wú)線電頻率,因此雙模設(shè)備可以共享同一個(gè)天線。低功耗藍(lán)牙使用的調(diào)制系統(tǒng)更簡(jiǎn)單。
LE技術(shù)相比BR技術(shù),差異非常大,或者說(shuō)就是兩種不同的技術(shù),湊巧都加一個(gè)“藍(lán)牙”的前綴而已。
目前BLE主要廣泛應(yīng)用于IoT產(chǎn)品領(lǐng)域。
4常見(jiàn)藍(lán)牙架構(gòu)
4.1SOC藍(lán)牙單芯片方案市面上,大致有幾種藍(lán)牙架構(gòu)
一般是半導(dǎo)體廠商半開(kāi)源協(xié)議棧,把開(kāi)發(fā)的藍(lán)牙協(xié)議棧直接燒寫(xiě)到藍(lán)牙芯片中,(比如CSR BC4/5,CSR8670,CSR8675,TI CC2540,NRF51xxx,NRF52xxx,樂(lè)鑫ESP32等等),架構(gòu)如下:
此類(lèi)芯片一般可以直接做為MCU用,這類(lèi)產(chǎn)品一般用于消費(fèi)類(lèi)電子,集成度很高,調(diào)調(diào)部參數(shù)可以直接使用,常見(jiàn)的有藍(lán)牙耳機(jī)。
在集成好的藍(lán)牙芯片基礎(chǔ)上,通過(guò)特定的接口(UART居多),發(fā)送自定義的command來(lái)達(dá)到想要的功能。比如發(fā)送0x01代表搜索周?chē)O(shè)備......
此部分的應(yīng)用,將藍(lán)牙作為一個(gè)外設(shè)使用,用于遠(yuǎn)程通信.
這種應(yīng)用算是藍(lán)牙最復(fù)雜的應(yīng)用,客戶(hù)需要使用藍(lán)牙的場(chǎng)景有很多,牽涉到的藍(lán)牙協(xié)議也有很多,需要將Host與Controller分開(kāi),集成更多的藍(lán)牙協(xié)議,比如藍(lán)牙電話(HFP),藍(lán)牙音頻(A2DP),藍(lán)牙音樂(lè)控制(AVRCP),藍(lán)牙電話本(PBAP),藍(lán)牙短信(MAP)等。
其中Transport是一個(gè)協(xié)議,H2就是在USB的基礎(chǔ)上的協(xié)議,H4,H5,BCSP是UART基礎(chǔ)上的協(xié)議,當(dāng)然還有SDIO。
此部分應(yīng)用,將定制藍(lán)牙的各種服務(wù),實(shí)現(xiàn)藍(lán)牙多功能需求。
大概列舉了以下幾種,幫助理解:
-
手機(jī)的藍(lán)牙復(fù)雜應(yīng)用,注定要用第3種方案,也就是藍(lán)牙協(xié)議棧(host)在主芯片中,藍(lán)牙芯片為HCI架構(gòu)的。
-
藍(lán)牙音響,藍(lán)牙耳機(jī):此種應(yīng)用一般用單芯片方案就能hold住,比如CSR8670/8675/杰理藍(lán)牙等,好處在于開(kāi)發(fā)便捷。
-
藍(lán)牙手表:要看功能復(fù)雜性,如果僅僅有時(shí)間顯示,傳感器交互,那么可以選擇單芯片方案(也就是方案1),如果有網(wǎng)絡(luò)等比較復(fù)雜的功能就要使用MCU+藍(lán)牙芯片方案(也就是方案3)了
-
藍(lán)牙手環(huán),藍(lán)牙心率帶等:基本上是單芯片方案