本文主要是講述了BLE應用提高數(shù)據(jù)通信速率的方法,主要可簡述為以下幾個方面:
??●使能DLE單幀數(shù)據(jù)長度擴展;
??●BLE5.0及以上版本,使用LE 2M PHY;
??●使用通知notify或?qū)懭霟o響應Write without
??●Response數(shù)據(jù)類型
??●盡可能增大 MTU,提高單次數(shù)據(jù)收發(fā)效率;
??●選擇1個合適的連接間隔;
??下文將針對以上幾點,進行詳細闡述。
??描述
??假設主從端采用通知有響應indicate數(shù)據(jù)類型,1M PHY編碼率,每個連接間隔包含1個連接事件(公式②中的連接事件時間,我司模塊采用協(xié)議棧默認值,一般就是協(xié)議棧允許最大值)。
??如圖2,主、從機間單個數(shù)據(jù)包通信流程包含:從機發(fā)給主機空包、上一個包結(jié)束到下一個包開始之間的時間間隔IFS(協(xié)議規(guī)定是150us)、從機接收主機回復的完整data數(shù)據(jù)包、IFS。

圖1 連接間隔與連接事件

圖2 主、從機間收發(fā)1個數(shù)據(jù)包通信流程

圖3 BLE ATT數(shù)據(jù)幀結(jié)構(gòu)
??那么,公式①:

??公式②:

??公式③:

??公式④:

??公式⑤:

??結(jié)論
??分析上述BLE數(shù)據(jù)通信速率計算公式,可看出提高BLE數(shù)據(jù)通信速率的方法有以下幾點,具體分析過程如下所示:
??●從上述公式①可看出,適當減小連接間隔可以提高BLE數(shù)據(jù)通信速率,但是也要明白連接間隔會影響功耗和客戶體驗,即連接間隔減小、功耗會提高;連接間隔增加、實時性越差、用戶體驗感越差。
??●結(jié)合公式②和③可看出,避免空包出現(xiàn)可以提高BLE數(shù)據(jù)通信速率,所以一般建議客戶使用通知notify和寫入無響應Write without Response,而不要使用通知有響應indicate和寫入有響應Write。
??●結(jié)合公式①和⑤可看出,使ATT payload盡可能的大,可提高BLE數(shù)據(jù)通信速率,那么使能DLE數(shù)據(jù)擴展后,Max ATT payload將從4.0/4.1協(xié)議的20bytes,提高至4.2/5.0協(xié)議的244bytes。
??●結(jié)合公式④和⑤可看出,使用LE 2M PHY可以提高BLE數(shù)據(jù)通信速率,但是需注意2M PHY只有BLE5.0/5.1協(xié)議才支持,4.2及以下版本協(xié)議不支持。
??●當MCU發(fā)給BLE設備的數(shù)據(jù)包字節(jié)數(shù)超過ATT MTU值時,協(xié)議棧會進行分包,如果ATT MTU盡可能大,例如大于等于Max ATT Payload,那么拆包數(shù)將達到最小,這將最小化數(shù)據(jù)包無效字節(jié)開銷(即除了ATT Payload外其他字節(jié)開銷),結(jié)合公式④和⑤可看出,這將極大提高BLE數(shù)據(jù)通信速率。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2930文章
46128瀏覽量
390754 -
BLE
+關(guān)注
關(guān)注
12文章
697瀏覽量
60612
發(fā)布評論請先 登錄
數(shù)據(jù)通信基礎(chǔ)課件
有什么方法可以抑制感應無線數(shù)據(jù)通信中的干擾?
數(shù)據(jù)通信基礎(chǔ)
數(shù)據(jù)通信的基本概念
什么是數(shù)據(jù)通信
無線移動數(shù)據(jù)通信,無線移動數(shù)據(jù)通信是什么意思
數(shù)據(jù)通信,數(shù)據(jù)通信原理是什么?

什么是數(shù)據(jù)通信的傳輸速率
數(shù)據(jù)通信協(xié)議種類分析

數(shù)據(jù)通信協(xié)議的簡介_數(shù)據(jù)通信協(xié)議有哪些

詳談數(shù)據(jù)通信的傳輸速率分類和原理
詳談數(shù)據(jù)通信的傳輸損耗分類和原理

評論