2个帖子/ 0新
最后一篇
Liuluan002.
离线
最后一次露面:3个月4周前
加入:2015-11-27 14:24
关于扫描仪

嗨对话框,

我正在尝试创建一个扫描仪,用于扫描每个时期3S中的空气中的广播包。但是在开始时,我试图将聆听时间设置为3秒,如果我在前500ms中得到了我想要的包。
你知道在3s扫描完成之前如何停止扫描吗?
你知道如何在这种情况下睡觉吗?自从当我将睡眠应用到代码中时,它将停止并卡住。我猜它与扫描有关。

我发现如果这样做,系统将停止运行。有什么建议吗?

void app_scan(void)
{
struct gapm_start_scan_cmd * cmd = ke_msg_alloc(gapm_start_scan_cmd,
task_gapm,task_app,
gapm_start_scan_cmd);
cmd-> op.code = gapm_scan_passive;
cmd->间隔= 4800;
cmd->窗口= 4800;
cmd-> mode = gap_gen_discovery;
cmd-> filt_policy = scan_allow_adv_wlst,
cmd-> filter_duplic = scan_filt_duplic_dis;
ke_msg_send(cmd);
}

设备:
mt_dialog.
离线
最后一次露面:2周1天前
职员
加入:2015-06-08 11:34
嗨Liuluan002,

嗨Liuluan002,

当计时器经过或当您的广告字符串到达​​时,您可以在3秒内开始扫描并设置ke_timer以取消扫描操作发出GAPM_CANCEL命令,这将取消扫描操作。

关于睡眠和扫描,请将DSP主机作为参考,我们在睡眠和扫描之间没有看到任何问题或崩溃。同样在您的扫描功能中,只要您的窗口,您不会在扫描这样的情况下看到任何睡眠。

谢谢mt_dialog.