Ble_gap_adv_stop不工作

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support.我们将在未来几天修复bug /优化搜索和标记。
2个帖子/ 0个新
最后发表
Stefan_Dialog
离线
最后看到:3年9个月前
加入:2017-02-28 13:06
Ble_gap_adv_stop不工作

嗨,支持,

当开始一个基于多链接演示的新项目时,我目前可以通过BLE连接一个主BLE设备和3个其他外围设备。
主设备发布100ms,扫描1秒。用于停止API功能ble_gap_adv_stop调用,并返回状态为0 (OK)。但有时,回报值是OK的,但内部状态的广告仍然是活跃的信号,手段ble_dev_params - >广告仍然是正确的。这可以保持到100ms,然后ble_gap_adv_stop命令返回5(不允许)。这似乎是OK的,因为两次停止没有意义。

问:是什么原因ble_gap_adv_stop不停止广告(ble_dev_params - >广告= TRUE) ?

BR Stefan

设备:
MT_dialog
离线
最后看到:两个月两个星期前
工作人员
加入:2015-06-08 34
嗨Stefan_Dialog,

嗨Stefan_Dialog,

我不太明白这个问题,你的意思是你发出ble_gap_adv_stop(),你得到ble_gap_adv_stop()本身的返回值,函数只是发送命令,代码不会阻塞,不会等到堆栈执行命令。当堆栈有应答时,ble_gap_adv_stop()发送停止请求并停止实际的发布,来自堆栈的应答可以在应用程序的主BLE任务中捕获,例如,在multilink项目中,只要BLE管理器通知BLE_EVT_GAP_ADV_COMPLETED任务并执行handle_evt_gap_adv_completed()函数,广告就会完成。

由于MT_dialog