android4.4bt培訓(xùn)-藍(lán)牙底層_第1頁(yè)
android4.4bt培訓(xùn)-藍(lán)牙底層_第2頁(yè)
android4.4bt培訓(xùn)-藍(lán)牙底層_第3頁(yè)
android4.4bt培訓(xùn)-藍(lán)牙底層_第4頁(yè)
android4.4bt培訓(xùn)-藍(lán)牙底層_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Android4.4藍(lán)牙協(xié)議與底層Jianli.dong2014-12-16藍(lán)牙協(xié)議與底層介紹藍(lán)牙協(xié)議棧代碼位置及介紹藍(lán)牙關(guān)鍵log及注意事項(xiàng)藍(lán)牙概述藍(lán)牙技術(shù)特點(diǎn)藍(lán)牙系統(tǒng)結(jié)構(gòu)藍(lán)牙系統(tǒng)結(jié)構(gòu)分為三大部分應(yīng)用中間協(xié)議層底層硬件模塊應(yīng)用應(yīng)用藍(lán)牙耳機(jī)相關(guān)的

應(yīng)用撥打HFPsco/escoAT命令指令集聽(tīng)音樂(lè)/AVDTPAVRCP應(yīng)用與

相關(guān)的

應(yīng)用傳文件OPPOBEX上網(wǎng)TCP/UDPIP組網(wǎng)BNEP藍(lán)牙系統(tǒng)結(jié)構(gòu)藍(lán)牙系統(tǒng)結(jié)構(gòu)分為三大部分應(yīng)用中間協(xié)議層底層硬件模塊中間協(xié)議層中間協(xié)議層串口仿真(

M)多路串口仿真流控幀類型中間協(xié)議層服務(wù)發(fā)現(xiàn)協(xié)議(SDP)數(shù)據(jù)元通用唯一標(biāo)示符(UUID)服務(wù)類中間協(xié)議層邏輯鏈路控制與適配協(xié)議(L2CAP)協(xié)議復(fù)用分段與重組服務(wù)質(zhì)量信息的交換組抽象中間協(xié)議層其他 協(xié)議HCI驅(qū)動(dòng)物理總線(串口,USB等)驅(qū)動(dòng)主機(jī)物理總線物理總線固件HCI

FirmwareLMRF藍(lán)牙控制器主機(jī)與控制器接口(HCI)藍(lán)牙系統(tǒng)結(jié)構(gòu)藍(lán)牙系統(tǒng)結(jié)構(gòu)分為三大部分應(yīng)用中間協(xié)議層底層硬件模塊底層硬件模塊底層硬件模塊底層硬件部分包括無(wú)線跳頻(RF)、基帶(BB)和鏈路管理(LM)RF層通過(guò)2.4GHz無(wú)需

的ISM頻段的微波,實(shí)現(xiàn)數(shù)據(jù)位流的過(guò)濾和傳輸,本層協(xié)議主要定義了藍(lán)牙收發(fā)器在此頻帶正常工作所需要滿足的條件?;鶐ж?fù)責(zé)跳頻以及藍(lán)牙數(shù)據(jù)和信息幀的傳輸。鏈路管理(LM)負(fù)責(zé)連接、建立和拆除鏈路并進(jìn)行安全控制。鏈路為SCO同步話音鏈路與ACL

異步數(shù)據(jù)鏈路。底層硬件模塊藍(lán)牙的SIG規(guī)定了四種與硬件連接的物理總線方式:USB、RS232、UART和PC卡。藍(lán)牙協(xié)議與底層介紹藍(lán)牙協(xié)議棧代碼位置及介紹藍(lán)牙關(guān)鍵log及注意事項(xiàng)藍(lán)牙協(xié)議棧代碼位置及介紹,便于增加新的profile;從框架圖可以發(fā)現(xiàn)bluedroid有以下特點(diǎn):1.層次結(jié)構(gòu)清晰。各個(gè)profile對(duì)上層接口增加了HAL層,便于移植。2.去掉了DBus,F(xiàn)ramework的Java代碼直接調(diào)用到Bluedroid的Native代碼。藍(lán)牙協(xié)議棧代碼位置及介紹Application

Framework該層代碼主要是利用android.bluetooth

APIS和BluetoothProcess進(jìn)行交互。也就是通過(guò)Binder

IPC機(jī)制調(diào)用

bluetooth

進(jìn)程;代碼位于frameworks/base/core/java/android/bluetooth下。Bluetooth

Process該層代碼主要是實(shí)現(xiàn)Bt

service和各種profile,通過(guò)JNI調(diào)用到HAL層。代碼最后編譯形成一個(gè)android

app包,位于

package/apps/Bluetooth下。BluetoothJNI該層代碼位于packages/apps/bluetooth/jni下,定義了藍(lán)牙適配層和協(xié)議層對(duì)應(yīng)的JNI服務(wù),直接調(diào)用HAL層并給HAL層提供相應(yīng)的回調(diào)。藍(lán)牙協(xié)議棧代碼位置及介紹4.

Bluetooth

HAL定義了android.bluetooth

APIs和BT

process調(diào)用的標(biāo)準(zhǔn)接口,通過(guò)調(diào)用這些接口使得hardware運(yùn)行正常。代碼位于

hardware/libhardware/include/hardwarebluetooth.h:

Contains

the

HAL

for

the

Bluetooth

hardwareon

thedevicebt_av.h:

Contains

the

HAL

for

the

advanced

audio

profile.bt_hf.h:

Containsthe

HAL

for

the

handsfree

profile.bt_hh.h:

Contains

the

HALfor

the

HID

hostprofile

bt_hl.h:

Contains

the

HAL

for

the

health

profilebt_pan.h:

Contains

the

HAL

for

the

pan

profilebt_sock.h:

Contains

theHAL

for

the

socketprofile.在HAL層并沒(méi)有實(shí)現(xiàn)定義的藍(lán)牙協(xié)議與屬性,其默認(rèn)實(shí)現(xiàn)在Bluedroid中,位于external/Bluetooth/bluedroid,用戶可以根據(jù)自己的需求增加屬性。藍(lán)牙協(xié)議棧代碼位置及介紹5.

BluetoothStack實(shí)現(xiàn)了HAL層中的定義,可以通過(guò)擴(kuò)展和改變配置來(lái)自定義。代碼位于external/Bluetooth/bluedroid下。BlueDroid分為兩個(gè)部分:1、Bluetooth

Embedded

System(BTE),它實(shí)現(xiàn)了BT的 功能,通過(guò)HCI與藍(lán)牙 交互實(shí)現(xiàn)藍(lán)牙協(xié)議棧的通用功能和相關(guān)協(xié)議。BTE還包括一個(gè)

內(nèi)核接口(GKI),藍(lán)牙 廠商可通過(guò)GKI快速輕松的移植藍(lán)牙協(xié)議棧到其他操作系統(tǒng)或

平臺(tái)上。2、Bluetooth

Application

Layer

(BTA),用于和androidframework層交互,實(shí)現(xiàn)藍(lán)牙設(shè)備管理、狀態(tài)管理以及一些應(yīng)用規(guī)范。協(xié)議棧代碼結(jié)構(gòu)external/bluetooth/bluedroidaudio_a2dp_hwbtabtifhcimainstackbte_main.cbte_init.c從代碼上可以清晰的發(fā)現(xiàn)android

4.4的優(yōu)點(diǎn):層次結(jié)構(gòu)清晰。各個(gè)profile對(duì)上層接口 ,便于增加新的profile.去掉了DBus,F(xiàn)ramework的Java代碼直接調(diào)用到Bluedroid的Native代碼。3.Bluetooth

HAL也屬于Android4.2新增模塊,它由藍(lán)牙 規(guī)范硬件抽象層和藍(lán)牙應(yīng)用規(guī)范硬件抽象層組成。由于HAL層的 作用,上層代碼可輕松移植到不同平臺(tái)。4.作為整個(gè)藍(lán)牙服務(wù)的 ,Bluetooth

Stack模塊則由Bluetooth

Application

Layer(縮寫為BTA)和Bluetooth

Embedded

System(縮寫為BTE)兩大部分組成。BTA實(shí)現(xiàn)了藍(lán)牙設(shè)備管理、狀態(tài)管理及一些應(yīng)用規(guī)范的bluedroid實(shí)現(xiàn)。而B(niǎo)TE則通過(guò)HCI與廠商藍(lán)牙 交互以實(shí)現(xiàn)了藍(lán)牙協(xié)議棧的通用功能和相關(guān)協(xié)議。另外,BTE還包括一個(gè)

內(nèi)核接口(GKI),藍(lán)牙 廠商可借助GKI快速輕松得移植藍(lán)牙協(xié)議棧到其他操作系統(tǒng)或 平臺(tái)上。藍(lán)牙協(xié)議與底層介紹藍(lán)牙協(xié)議棧代碼位置及介紹藍(lán)牙關(guān)鍵log及注意事項(xiàng)藍(lán)牙關(guān)鍵log參見(jiàn)文檔Android4.4藍(lán)牙log分析pdf藍(lán)牙Log分類有效的Log是分析問(wèn)題的重要保障,分析藍(lán)牙問(wèn)題需要涉及到三類Log:Android

log(包括main

log,systemlog,event

log等)HCI

Log(通常說(shuō)的bt

log)Controller

log(通常說(shuō)的cp2

log)藍(lán)牙Log抓取方法展訊平臺(tái)常用LOG工具使用指南.ppt

這篇文檔對(duì)常用工具Log抓取方法有了較多的講解,此處主要針對(duì)android4.4的log設(shè)置做下講解。測(cè)試藍(lán)牙模塊前的一些準(zhǔn)備工作,步驟如下:進(jìn)入工程模式:*#*#83781#*#*----向左滑動(dòng)屏幕或者點(diǎn)擊DEBUG

TAB頁(yè),進(jìn)入DEBUG&LOG界面(圖1)選擇Log

Settings選項(xiàng),進(jìn)入Log

settings界面(圖2)選擇SlogUI選項(xiàng),進(jìn)入SlogUI界面(圖3)檢查Android Modem

Log,Bluetooth

Log是否勾選(圖4),需要勾選(圖5)藍(lán)牙Log抓取方法圖1圖2藍(lán)牙Log抓取方法圖3圖4藍(lán)牙Log抓取方法圖5藍(lán)牙Log抓取及提交CQ注意事項(xiàng)由于Bluetooth問(wèn)題較復(fù)雜,可能需要分析APP,F(xiàn)ramwork,driver,CP2等多個(gè)模塊,因而CR中提供有效信息對(duì)于分析問(wèn)題非常重要。完整的Log是分析問(wèn)題的重要保障,不怕測(cè)試測(cè)到問(wèn)題,就怕測(cè)試到問(wèn)題但卻沒(méi)有Log或者Log不全,導(dǎo)致問(wèn)題不能分析或者因?yàn)長(zhǎng)og不全需要復(fù)現(xiàn)測(cè)抓log,花費(fèi)測(cè)試工程師較多時(shí)間,特別是一些低概率問(wèn)題。有效的Slog.測(cè)試前的檢查工作,準(zhǔn)備工作是否做好。務(wù)必確保三項(xiàng)log開(kāi)關(guān)是打開(kāi)記錄出現(xiàn)問(wèn)題的時(shí)間點(diǎn)藍(lán)牙Log抓取及提交CQ注意事項(xiàng)提交問(wèn)題時(shí)記錄下出問(wèn)題的時(shí)間,這有助于從大量的log中快速定位問(wèn)題問(wèn)題描述用準(zhǔn)確而詳細(xì)的操作步驟具體的問(wèn)題現(xiàn)象如文件傳輸失敗,不要籠統(tǒng)的描述“傳輸失敗”,需要說(shuō)明是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論