日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

蓝牙基础知识进阶——Physical channel

發(fā)布時間:2025/3/8 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 蓝牙基础知识进阶——Physical channel 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

藍牙基礎(chǔ)知識進階——Physical channel

二、物理通道

???物理通道是piconet區(qū)分的標準,它是藍牙系統(tǒng)結(jié)構(gòu)層次中的最底層了。

??? Q1:物理通道有哪些類型

??? 物理通道通常可以分為四種類型:

??? 1basicpiconet channel

??? 2adaptedpiconet channel

????? 這兩種channel是兩個已經(jīng)連接設(shè)備之間通信使用的。也就是說他們和特定的微微網(wǎng)之間是相關(guān)聯(lián)的。

??? 3inquiry scanchannel:用于discovering藍牙設(shè)備

??? 4page scanchannel:用于連接藍牙設(shè)備。

Basic Piconet Channel

??? Q2Basicpiconet channel是如何工作的

??? 在Basic piconetchannel中,它會把通道分為以625μs為單位的時間長度(slot),使用的是TDD的策略進行傳輸,可以理解為TXRX是時分雙工的。需要注意的是packet的開始和slot的開始需要是對齊的。從目前的packet type來看,最長會占用5time slot。多packetslot傳輸情況見下圖四。


圖四 多slot packet的傳輸示意圖



???? Q3:為什么都是占奇數(shù)個slot啊,有偶數(shù)個的么?

??? 從目前來看,各種packet type所占的slot只有三種,分別占1,3,5slot,暫未有偶數(shù)個的slotpacket出現(xiàn)。另外,需要注意的是mastertx需要在奇數(shù)個的slot開始,rx必須在偶數(shù)個的slot開始。

??? packet的平均漂移和625μs相比,不能超過20ppm。瞬時的時間和平均時間偏差不能超過1μs

??? Q4:既然有時間的偏差,那么rx的時候是否有對應的機制

??? 是的,在rx的時候,我們是用一個windows來監(jiān)聽的,而不是說就在625μs那個點去監(jiān)聽。目前的監(jiān)聽window的大小是20μs,也就是說允許的誤差是+-10μs,這樣的誤差容忍度還是很高的。圖五是以單packet為例來介紹的正常情況下的TX/RX示意圖。


圖五?masterTX/RX示意圖

??? 同樣的windows也發(fā)生在slaverx過程中,不詳細介紹。

????Q5:既然時間的要求如此嚴格,masterslave是如何同步時鐘的

??? 就使用的時鐘而言,master就是使用的它的native的時鐘,而slave則是在它的native時鐘上加上對應的offset得到和master同步的時鐘。這個offset是在inquiry過程中交互得到的。為了防止時鐘的偏移,slave在每次收到masterpacket的時候都需要刷新offset。時鐘的得到方法見下圖六。其中六-a)是master中時鐘的產(chǎn)生,六-b)是slave時鐘的產(chǎn)生。


圖六?masterslave的時鐘產(chǎn)生示意圖

Adapted piconet channel

???Q6: adapted piconetchannel有何特別之處

??? adapted piconetchannel是用于連接支持AFHAdapter Frequency Hopping)的設(shè)備時使用的。和Basic相比,他的最大不同之處在于它可能沒有使用全部的79個頻點,但是它使用頻點的數(shù)目最小值是20。也就是說若是環(huán)境很差,79個頻點只有不到20個頻點是干凈可用的,那么AFH機制將無法運行,也就沒有所謂的自適應調(diào)頻了,表現(xiàn)到最終的用戶體驗上你看到的就是音樂的卡頓啊,或者打電話的斷音等等。

Page scan physical channel

???Q7masterslave的角色是在連接過程中才確定的,在page scan這個過程中是否也有masterslvae之分

??? 這個問題是一個看起來很簡單,其實很專業(yè)的問題了。一般來說,在masterslave還沒有確定之前,我們稱執(zhí)行page的那個設(shè)備為master,而page scan(也就是等待page)的那個設(shè)備為slave。需要注意的是這個masterslave和最終建立連接之后的masterslave并不是對應的,這之間有可能發(fā)生role switch等一系列的操作。后面的inqiry scan也是類似的,就不多說了。

???Q8page時所使用的時鐘就是nativeclk

?? 為了更好更快地page到對方,在真正page的時候并沒有使用nativeclk,而是采用了一個預測的clk,希望能夠盡量和slaveclk相接近。這之間有一個offset的偏移,這個偏移一般使用inquiry的信息中的偏移,在Android中只有10分鐘之內(nèi)的inquiry信息才會被使用,畢竟這個clk也是會變化的,時間過長這種inquiry到的clk offset就沒有什么實際意義了。page過程中使用的clk如下圖七所示。


圖七?page時的clk示意圖

Q9Page scanbasicpiconet channe有什么差別

??? 總得來說,各種機制都是差不多的。一個比較大的差別在于時間上,因為pagepacket很小(也是固定的),所以為了更好地利用時間,他不是625μs才發(fā)送一次,而是在625μs中發(fā)送了兩次,也就是312.5μs發(fā)送一次,這也是藍牙clk最小的時間間隔了。于是從master的角度來看,我們可以看到的內(nèi)容就如下圖八所示了。


圖八?page scan過程mastertx rx時序圖

??? 如上所說,可以很清晰地看到一個slot中發(fā)送了兩個packet。同時在rx的時候也在兩個時間點前后進行了監(jiān)聽。這樣就可以響應slave在兩個時間點發(fā)送的response

??? 這樣的機制對slave而言就會有兩種可能,一種是它在master發(fā)送第一個packet的時候slave就收到了,這種情況和625μs發(fā)送一次是一樣的,就不再多說了。另外一種情況則是slavemaster發(fā)送第二次packet的時候才收到,那么他會在收到之后625μs回應,master收到這個回應之后就不再等待625μs了,而是在下一個slot開始就是回應了。具體看圖九所示。


圖九?slavemaster第二次發(fā)送后收到的時序圖

??? 這樣看起來還是比較清晰的,藍色的packet就是真正收到的packet

Inquiry scan physicalchannel

????????? Q10inquiry scanbasic有何差別

??? 其實inquiryscanpage scan比較類似,他也是312.5μs發(fā)送一次,比較大的差別在于他的slave的回應比較長,超過了312.5μs,這樣假如它的回應是在第二次就會出現(xiàn)slave占用master to slave slot的情況,如圖中紅色圈圈所示,這是允許的。見下圖十。

圖十?inquiryscan在第二次受到inquiry packet后的時序圖

文章來源:https://blog.csdn.net/u011960402/article/details/17952379

轉(zhuǎn)載于:https://blog.51cto.com/11134889/2301628

總結(jié)

以上是生活随笔為你收集整理的蓝牙基础知识进阶——Physical channel的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。