From 255c51174a0571340ef470184064a5c75d261d27 Mon Sep 17 00:00:00 2001 From: WXK <287788329@qq.com> Date: 星期三, 22 一月 2025 15:06:27 +0800 Subject: [PATCH] 加入一开始不广播升级 中断触发gpio后广播升级 10分钟自动退出 --- 01_SDK/nimble/controller/pan107x_spark/include/stack/controller/bb_api.h | 48 +++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 45 insertions(+), 3 deletions(-) diff --git a/01_SDK/nimble/controller/pan107x_spark/include/stack/controller/bb_api.h b/01_SDK/nimble/controller/pan107x_spark/include/stack/controller/bb_api.h index d7914d5..95da315 100644 --- a/01_SDK/nimble/controller/pan107x_spark/include/stack/controller/bb_api.h +++ b/01_SDK/nimble/controller/pan107x_spark/include/stack/controller/bb_api.h @@ -43,6 +43,15 @@ BB_POWER_7_dB = 7, }BB_Power_Type_t; +/*! Adv PDU Filter Mask */ +enum{ + BB_ADV_PDU_FILT_ADV_IND = (1 << 0), + BB_ADV_PDU_FILT_ADV_NONCONN_IND = (1 << 2), + BB_ADV_PDU_FILT_SCAN_RSP = (1 << 4), + BB_ADV_PDU_FILT_ADV_SCAN_IND = (1 << 6), + BB_ADV_PDU_FILT_ADV_EXT_IND_OR_AUX_ADV = (1 << 7), +}; + /** * @brief : Set RF TX power. * @param : pwr can be BB_POWER_0_dB ... @@ -56,9 +65,6 @@ * @return: none. */ void BB_SetBleChannel(uint8_t bleChn); - - - /*! BB time */ static inline uint32_t BB_GetCurTick(void) { @@ -76,6 +82,42 @@ void BB_Calibrate32kRC(uint32_t expected_freq); bool_t BB_Is32kClkTrackBusy(void); +/*! ADV Type/PDU Filter API */ +// Only use for pan108 +void BB_SetAdvTypeFilterEnable(uint8_t en); + +/** + * @brief : Set ADV Type to Filter. + * @param : id rang 0-6 + * @param : advType + * @param : advTypeDataLen + * @return: -1 if error or 0 + */ +int BB_SetAdvTypeToFilter(uint8_t id, uint8_t advType, uint8_t advTypeDataLen); + +// use for pan108/pan107 +void BB_SetAdvPduFilterEnable(uint8_t en); +void BB_SetAdvPduFilter(uint8_t en, uint16_t advPduMsk); + +// Only use for pan107 +/** + * @brief : Set ADV Packet data to Filter. + * @param : id rang 0-4 + * @param : offset data start position in adv packet + * @param : data pointer point to data buffer. + * @param : len the length of data + * @return: -1 if error or 0 + */ +int BB_SetAdvPktDataToFilter(uint8_t id, uint8_t offset, uint8_t *data, uint32_t len); + +/** + * @brief : Enable ADV Packet Filter function. + * @param : id rang 0-4 + * @param : en ENABLE/DISABLE + * @return: -1 if error or 0 + */ +int BB_SetAdvPktFilterEnable(uint8_t id, uint8_t en); + /*! BB Debug */ void BB_DebugInit(void); void BB_DebugReset(void); -- Gitblit v1.9.3