同时连接到多个外围设备

学到更多常见问题解答教程

5个帖子/ 0新
最后一篇
Takeuchi0304
离线
最后一次露面:1年8个月前
加入:2019-02-26 02:37
同时连接到多个外围设备

你好。

是否可以同时与多个外围设备建立BLE连接?

我试图设置设备配置以使DA14585表现为中心模式,并连接到2个外围设备。

成功建立了与第一外围设备的连接,但除非设置第1连接,否则不会启动与第二外围设备的连接。

如果可能,你能告诉我如何建立多个连接吗?

谢谢。

设备:
PM_DIALOG.
离线
最后一次露面:11周11小时前
员工
加入:2018-02-08 11:03
嗨takeuchi0304,

嗨takeuchi0304,

对的,这是可能的。请检查在da1458x_config_basic.h标题文件中的cfg_max_connections。此定义确定应用程序支持的最大并发连接。它配置分配给服务多个连接的堆内存。它用于差距中央角色应用。雷竞技安卓下载

谢谢,PM_DIALOG.

Takeuchi0304
离线
最后一次露面:1年8个月前
加入:2019-02-26 02:37
感谢您的答复!

感谢您的答复!

Takeuchi0304
离线
最后一次露面:1年8个月前
加入:2019-02-26 02:37
我如下尝试;

我如下尝试;

```

#define cfg_max_connections(2)

uint8_t bd_addr_0 [6];//固定BD地址

uint8_t bd_addr_1 [6];//固定BD地址

struct gapm_start_connection_cmd * cmd = ke_msg_alloc_dyn(

Gapm_start_connection_cmd,task_gapm,task_app,gapm_start_connection_cmd,

cfg_max_connections * sizeof(struct gap_bdaddr));

cmd-> op.code = gapm_connection_direct;

cmd-> op.addr_src = gapm_static_addr;

cmd-> scan_interval = 0x180;

cmd-> scan_window = 0x160;

cmd-> con_intv_min = 100;

cmd-> con_intv_max = 100;

cmd-> con_latency = 0;

cmd-> superv_to = 0x1f4;

cmd-> ce_len_min = ms_to_doubleslots(0);

cmd-> ce_len_max = ms_to_doubleslots(0);

cmd-> nb_peers = 2;

memcpy(cmd->对等体[0] .addr.addr,bd_addr_0,bd_addr_len * sizeof(uint8_t));

cmd->对等体[0] .addr_type = gapm_cfg_addr_public;

memcpy(cmd->对等体[1] .addr.addr,bd_addr_1,bd_addr_len * sizeof(uint8_t));

cmd->对等体[1] .addr_type = gapm_cfg_addr_public;

ke_msg_send(cmd);

```

我期望可以收到GAPC_CONNECTION_REQ_NIND事件。

但是无法接收第二个设备的事件。

我的代码出了什么问题?

你能给我一个代码片段还是正确的消息序列?

谢谢。

PM_DIALOG.
离线
最后一次露面:11周11小时前
员工
加入:2018-02-08 11:03
嗨takeuchi0304,

嗨takeuchi0304,

你可以检查示例:BLE中央安全演示项目软件示例作为基于SDK6.0.10.511顶部的引用。此外,请注意DA14585 / 6的所有软件示例都不包含SDK文件,因此您必须将示例与SDK路径链接以构建它们。此链接中描述了您应遵循的程序:示例:DA1458X示例设置

谢谢,PM_DIALOG.