CH579芯片BLE庫v1.4和BLE庫v1.7速度測(cè)試比較問題

芯片CH579,經(jīng)測(cè)試,BLE庫v1.4和v1.7的速度差別很大,使用官方提供的ch57x_ble_uart程序,分別使用BLE v1.4和BLE v1.7版本(在CH57xBLE_LIB.H中定義的VER_FILE),參數(shù)使用BufMaxLen=90,BufNumber=10,TxNumEvent=1,使用官方提供的BLE調(diào)試注手,發(fā)送采用連續(xù)發(fā)送,發(fā)送間隔1ms,數(shù)據(jù)量280字節(jié),HEX發(fā)送,v1.4平均速度可達(dá)4000B/s以上(最大可達(dá)6000B/s以上),v1.7的速度平局只有1000B/s以上(最大也就是大概1300B/s左右)。

另外發(fā)現(xiàn)使用v1.7版本的BLE庫ROM版本,非LIB(用于OTA升級(jí)),此時(shí)BufMaxLen無法設(shè)置為251,簡單測(cè)試了下,超過100都不行,會(huì)導(dǎo)致,能掃描到,但是連接不上,無法獲取Services。


速度測(cè)試截圖如下:

下圖為v1.4版本的庫

1616905324580144.jpg


下圖為v1.7版本的庫

1616905325150807.jpg


是否我使用的方法有問題,請(qǐng)官方給與幫助,謝謝

補(bǔ)充一下,芯片是ch579


這個(gè)差異的主要原因可能是來自于 兩個(gè)工程 在你測(cè)試時(shí)候建立的連接間隔不同,

可以著重關(guān)注下工程里面的這個(gè)值的變化?


connInterval
/*********************************************************************
?*?@fn??????peripheralParamUpdateCB
?*
?*?@brief???Parameter?update?complete?callback
?*
?*?@param???connHandle?-?connect?handle
?*??????????connInterval?-?connect?interval
?*??????????connSlaveLatency?-?connect?slave?latency
?*??????????connTimeout?-?connect?timeout
?*??????????
?*?@return??none
?*/
static?void?peripheralParamUpdateCB(?uint16?connHandle,?uint16?connInterval,?
??????????????????????????????????????uint16?connSlaveLatency,?uint16?connTimeout?)
{
??if(?connHandle?==?peripheralConnList.connHandle?)
??{
????peripheralConnList.connInterval?=?connInterval;
????peripheralConnList.connSlaveLatency?=?connSlaveLatency;
????peripheralConnList.connTimeout?=?connTimeout;
?
????printf("Update?%x?-?Int?%x?\n",?connHandle,?connInterval);
??}
??else
??{
????PRINT("ERR..\n");
??}
}

連接間隔可以由主機(jī)端來設(shè)置, 也可以由從機(jī)端請(qǐng)求設(shè)置.



另外,對(duì)于你說的"此時(shí)BufMaxLen無法設(shè)置為251,簡單測(cè)試了下,超過100都不行,會(huì)導(dǎo)致,..."

這個(gè)是因?yàn)槟愕墓こ讨?BLE_MEMHEAP_SIZE 跟BLE_BUFF_MAX_LEN與BLE_BUFF_NUM設(shè)置的不太合理

這里BLE_BUFF_MAX_LEN*BLE_BUFF_NUM 越大需要的BLE_MEMHEAP_SIZE 就越大


可以考慮減小BLE_BUFF_NUM 來增加BLE_BUFF_MAX_LEN?

如按照下面這樣

#ifndef?BLE_MEMHEAP_SIZE
#define?BLE_MEMHEAP_SIZE						(1024*8)
#endif
#ifndef?BLE_BUFF_MAX_LEN
#define?BLE_BUFF_MAX_LEN						251
#endif
#ifndef?BLE_BUFF_NUM
#define?BLE_BUFF_NUM							4
#endif
#ifndef?BLE_TX_NUM_EVENT
#define?BLE_TX_NUM_EVENT						2

另外BLE_BUFF_MAX_LEN 這個(gè)值增加后, 建立連接后往往也是 按照最大單包20字節(jié)傳輸?shù)?/span>

主機(jī)在連上那個(gè)后,需要進(jìn)行MTU更新后才會(huì)啟用長包傳輸




只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频