ble连接过程建立_九点之蓝牙连接
生活随笔
收集整理的這篇文章主要介紹了
ble连接过程建立_九点之蓝牙连接
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
藍(lán)牙連接
藍(lán)牙連接是如何進(jìn)入到連接狀態(tài)呢,首先必須經(jīng)歷前面提到的廣播階段,主端通過掃描到從端的廣播來發(fā)現(xiàn)這個(gè)設(shè)備,之后讓主端發(fā)出連接請(qǐng)求來要求與從端建立連接,便可以進(jìn)入到連接狀態(tài)。由于藍(lán)牙連接牽涉的點(diǎn)比較多,所以在這里就是簡單的給出藍(lán)牙連接簡單模型!從通信模型上來看,BLE連接屬于雙向通信。較之廣播而言,連接的過程則要復(fù)雜的多,但是沒有關(guān)系,這些個(gè)復(fù)雜的交互過程在如今都已經(jīng)被芯片供應(yīng)商們都封裝好了,我們需要做的,就是使用它并能夠理解一個(gè)其中大概的原理就好了。最常用的藍(lán)牙連接模型如下圖所示,主端在發(fā)出數(shù)據(jù)后即會(huì)進(jìn)入接收模式等待從端的數(shù)據(jù),而從端則反之,這樣就完成了一次或多次數(shù)據(jù)交換,這樣一個(gè)過程稱為一次連接事件connection event。在完成一次連接事件之后即進(jìn)入到休眠狀態(tài)idle以節(jié)省功耗,在一段時(shí)間后雙方同時(shí)喚醒再交換一次數(shù)據(jù),這個(gè)時(shí)間間隔也稱為連接間隔 connection interval。可以看到,因?yàn)橹荒茉诿恳淮嗡{(lán)牙事件發(fā)生的時(shí)候才能夠交互一次數(shù)據(jù),所以藍(lán)牙的通信速率實(shí)際上是取決于藍(lán)牙連接間隔的長短,間隔越短,可以達(dá)到的通信速率也就越快。而當(dāng)沒有實(shí)際數(shù)據(jù)交互的時(shí)候,BLE底層也會(huì)通過發(fā)送空包交互的方式來維系藍(lán)牙連接的存在,當(dāng)有數(shù)據(jù)的時(shí)候再將數(shù)據(jù)加載進(jìn)去即可。此外,藍(lán)牙底層對(duì)于數(shù)據(jù)交互有著嚴(yán)苛的要求,比如當(dāng)從端發(fā)送一包數(shù)據(jù)至主端后,它會(huì)等待主端的回復(fù)信息以確認(rèn)數(shù)據(jù)已經(jīng)發(fā)送成功,否則會(huì)持續(xù)發(fā)送直到連接斷開為止。這個(gè)過程也是藍(lán)牙協(xié)議底層在處理的,對(duì)于應(yīng)用層來說這些問題都不用關(guān)心。除了連接間隔之外,還有兩個(gè)參數(shù)需要關(guān)心。一個(gè)叫從機(jī)時(shí)延,從上圖最開始可以看到在完成一次連接事件之后,從端進(jìn)入休眠,并直接跳過了接下來的兩次事件,然后再與主端交互一次。這樣做,比較適合長時(shí)間連接并交互數(shù)據(jù)不多的設(shè)備,無疑更省電!另一個(gè)叫連接超時(shí)則很好理解,當(dāng)通信雙方從一次連接事件之后,持續(xù)一段時(shí)間沒有交互數(shù)據(jù)并達(dá)到設(shè)定時(shí)間則會(huì)發(fā)生連接超時(shí)然后通信雙方斷開。讓每一個(gè)物體
有生命!
長按關(guān)注總結(jié)
以上是生活随笔為你收集整理的ble连接过程建立_九点之蓝牙连接的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 挖掘机破碎锤多少钱啊?
- 下一篇: uniapp弹出框_uniApp上拉刷新