請教一下如何在廣播過程中,修改廣播參數(shù)。

image.png

像這樣更改廣播間隔可以嗎?

可以參考下方動態(tài)廣播的鏈接:https://www.cnblogs.com/risc5-ble/p/16619902.html

有兩種方式實現(xiàn),一種是通過關閉廣播跟新參數(shù)再打開廣播實現(xiàn),另一種是調(diào)用更新廣播內(nèi)容函數(shù),只可以改變內(nèi)容。


上述方法可以修改廣播數(shù)據(jù),修改廣播間隔需要GAPRole_SetParameter GAPROLE_MIN_CONN_INTERVAL與?GAP_SetParamValue?TGAP_DISC_ADV_INT_MIN等4個參數(shù)嗎?


使用關閉廣播修改參數(shù)再開啟廣播的方式是可以修改廣播間隔的。

uint16_t advInt = DEFAULT_ADVERTISING_INTERVAL;

GAP_SetParamValue(TGAP_DISC_ADV_INT_MIN, advInt);

GAP_SetParamValue(TGAP_DISC_ADV_INT_MAX, advInt);



驗證廣播間隔是可以調(diào)整的,請問怎么獲取是否正在廣播的狀態(tài)呢?peripheralStateNotificationCB會通報新狀態(tài),有沒有更直接讀取的接口呢?


可以使用此函數(shù)去獲取狀態(tài):GAPRole_GetParameter(GAPROLE_STATE , &state);

#define GAPROLE_INIT? ? ? ? ? ? ? ? ? ? ? ? 0? ? ? ?//!< Waiting to be started

#define GAPROLE_STARTED? ? ? ? ? ? ? ? ? ? ?1? ? ? ?//!< Started but not advertising

#define GAPROLE_ADVERTISING? ? ? ? ? ? ? ? ?2? ? ? ?//!< Currently Advertising

#define GAPROLE_WAITING? ? ? ? ? ? ? ? ? ? ?3? ? ? ?//!< Device is started but not advertising, is in waiting period before advertising again

#define GAPROLE_CONNECTED? ? ? ? ? ? ? ? ? ?4? ? ? ?//!< In a connection

#define GAPROLE_CONNECTED_ADV? ? ? ? ? ? ? ?5? ? ? ?//!< In a connection + advertising

#define GAPROLE_ERROR? ? ? ? ? ? ? ? ? ? ? ?6? ? ? ?//!< Error occurred - invalid state



謝謝


只有登錄才能回復,可以選擇微信賬號登錄

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