你好,
我一直在尝试获得为DA14583工作的基本扫描功能。我使用了SDK v3.0.10.1的模板项目,只有一些小的适应。
- 配置角色已更改为Gap_Central_mst;
- “app_set_dev_config_complete_func”被更改,因此它开始扫描而不是广告
void app_set_dev_config_complete_func(void)
{
//我们现在处于初始化状态
ke_state_set(task_app,app_db_init);
//在数据库中添加第一个必需的服务
if(app_db_init()))
{
//没有服务在DB中添加 - >开始扫描
app_start_scan();
}
返回;
}
void app_start_scan(void)
{
struct gapm_start_scan_cmd * msg = ke_msg_alloc(gapm_start_scan_cmd,task_gapm,task_gtl,
sizeof(struct gapm_start_scan_cmd)));
msg-> mode = gap_observer_mode;
msg-> op.code = gapm_scan_active;
msg-> op.addr_src = gapm_public_addr;
msg-> filter_duplic = scan_filt_duplic_dis;
msg-> filt_policy = scan_allow_adv_all;
msg->间隔= 10;
msg->窗口= 5;
ke_msg_send((void *)msg);
返回;
}
- 在da14580_config中启用了以下配置文件:
#define cfg_prf_disc.
#define cfg_prf_pxpm.
这些变化在我们自己的硬件以及开发板上进行了测试。我尝试了各种不同的设置,但我根本无法让调试器在GAPM_ADV_REPORT_IND_HANDLER函数中点击断点。
此外,我们尝试了近似报告示例,该示例是罚款,因此我们在代码中必须有一些设置或我们缺少的东西。不幸的是,我们不能使用Proximity报告示例,因为所有代码都必须位于BLE芯片中。
任何想法,我们需要什么,以便获得此功能?
您应该将源任务更改为task_app而不是task_gtl。如果您在外部处理器上运行代码,则使用gtl。
解决问题,谢谢。