工具/软件:Code Composer Studio
尊敬的
我使用接口 GapScan_enable (0、0、0)在基于项目 multi_role 的扫描后打开代码中的扫描、几个小时后、代码将报告内存不足并停止扫描。那么、我应该在代码中修改 shoudle 的位置执行什么操作?一些相关代码如下所示:
{
uint8_t temp8;
uint16_t temp16;
GapScan_registerCb (multi_role_scanCB、空);
GapScan_setEventMask (GAP_EVT_SCAN_ENABLED | GAP_EVT_SCAN_DISABLED |
GAP_EVT_ADV_REPORT);
GapScan_setPhyParams (default_scan_PHY、scan_type_passive、
SCAN_PARAM_DFLT_INTERVAL、SCAN_PARAM_DFLT_WINDOW);
temp16 = MR_ADV_RPT_Fields;
GapScan_setParam (scan_Param_RPT_Fields、&temp16);
//设置扫描主 PHY
temp8 = DEFAULT_SCAN_PHY;
GapScan_setParam (scan_Param_Prim_phys、&temp8);
//设置 LL 重复滤波器
temp8 = SCAN_FLT_DUP_ENABLE;
GapScan_setParam (scan_Param_FLT_DUP、&temp8);
temp16 = SCAN_FLT_PDU_ADV_ONLY | SCANFLT_PDU_SCANRSP_ONLY | SCAN_FLT_PDU_COMPLEE_ONLY;
GapScan_setParam (scan_Param_FLT_PDU_type、&temp16);
}
{
(无效)索引;
//扫描 DEFAULT_SCAN_DURATION x 10ms。
//堆栈不需要记录广播报告
//因为应用程序将按 Service UUID 过滤它们并进行保存。
numScanRes = 0;
#else //!default_dev_disc_by_SVC_UUID
//扫描 DEFAULT_SCAN_DURATION x 10ms。
//让堆栈记录最多为 DEFAULT_MAX_SCAN_RES 的广播报告。
GapScan_enable (0、DEFAULT_SCAN_DURATION、DEFAULT_MAX_SCAN_RES);
#endif // default_dev_disc_by_SVC_UUID
//仅启用“停止发现”,并禁用主菜单中的所有其它功能
// TBM_setItemStatus (&mrMenuMain、MR_Item_STOPDISC、
// (MR_ITEM_ALL &~MR_ITEM_STOPDISC);
}