藍芽技術序和目錄

2021-08-10 23:08:14 字數 915 閱讀 4270

當年在清華大學研究院做過乙個專案,需要在展訊的功能手機平台上實現藍芽遠端sim卡(sap profile)的功能。這個功能比較冷門,只有車載裝置才會有這樣的需求,而展訊平台目標是手機市場,所以預設情況下不會提供這樣的功能。

跟領導提供過三個方案,一是找到提供此功能的**商,二是讓展訊合作開發,三是移植開源協議棧。市面上的藍芽**商找了一圈,包括知名的csr、rda、nodic。其中csr實現的協議棧是最全的,他們有sap協議,但都是在其他平台上實現的。如果要在展訊平台上實現sap profile,需要做移植。而csr不會對研究院的專案產生興趣,也不會投入他們的研發資源。第一方案走不通,而第二方案也同時在走。領導和清華紫光的總經理是老同學,而清華紫光當年剛好收購展訊完畢,因此嘗試一下是否有合作機會。展訊有仔細評估過我們的專案,但是藍芽協議這塊還是跟csr、rda合作。前兩條路都受阻, 就只剩下自己移植這條路。

了解藍芽原理還是需要的,因為藍芽裡面很多概念,藍芽的架構要搞清楚。否則一開始就看bluez或btstack的**,只會加速讓你放棄。所以我的學習路線是,邊看原理概念,邊找一些bluez上層應用例子去看,邊寫一些簡單應用。這樣一步步,形成了乙個由淺入深的過程。但bluez對我來說只是學習用的。因為bluez比較重,如果移植到乙個展訊平台上的threadx這種rtos上面,會有很多改動,所以選用輕量級btstack移植。btstack本身支援嵌入式系統,移植過程中,只修改hci驅動部分和一些系統呼叫。移植過程比較順利,沒有遇到很棘手的問題。只是btstack太輕,當時sdp協議都沒有,要自己實現;active、sniff模式沒有,所以休眠時功耗有問題,這部分也需要自己實現。還有很多諸如此類的問題。小路雖然難行,但能夠通往最終目標。後來我們自己在btstack之上完善了很多協議,也解決了btstack上一些bug。

還記得當時把協議棧調通時候的心情。不是做技術的,鬼知道我們在傻樂什麼?

二 核心架構

藍芽技術原理(9)藍芽AOA AOD技術原理

5.1 有個特性加入了aoa和aod定位應用,實現了厘公尺級別的定位功能,效果不錯 1 發射端 1 乙個tag 2 單天線的 3 資料報為cte廣播資料 2 接收端 1 陣列天線 2 通過cte廣播訊號得到iq結果 1 發射端 1 乙個天線 2 通過cte廣播訊號得到iq結果 2 接收端 1 陣列天...

Android Bluetooth藍芽技術基礎講解

一 bluetooth包簡介 android平台提供了乙個android.bluetooth的包,裡面實現藍芽裝置之間通訊的藍芽api。總共有8個類,常用的四個類如下 bluetoothadapter類 代表了乙個本地的藍芽介面卡。它是所有藍芽互動的入口點。利用它你可以發現其他藍芽裝置,查詢繫結了的...

藍芽技術詳解

在物聯網中物與網相連的最後數公尺,發揮關鍵作用的是短距離無線傳輸技術,目前有多種短距離無線傳輸技術可以應用在物聯網中,在我國,除已得到大規模應用的rfid之外,還有wifi zigbee 藍芽 nfc等 1 rfid 無線射頻識別技術,是一種通訊技術,可以通過無線電訊號識別特定目標並讀寫相關資料 r...