各位,你好,我有一个问题,当我同时连接到两个模块。我不能发现服务和第二设备的特性。总是我找到的第一个设备服务和特征。我不知道我怎么可以单独搜索服务。是否可以搜索第二设备的服务和特性,而发现的第一批!?任何帮助表示赞赏这么多。谢谢你。
任何人都可以帮助!
你好。作为指定由HTTP://support.dialog-semiconductor.com/system/files/resources/RW-BLE-GA ...一旦建立连接为每个外围一GATTC任务被实例化。您可以通过发送邮件GATT到相应的GATTC任务涉及到每个外设。每个GATTC任务都有一个“连接索引”或“conidx”。当您收到从GATTC任务(或管理连接本身GAPC任务)的消息,你可以在消息处理程序中编写KE_IDX_GET(src_id)的conidx。要发送消息给对应的GATTC任务,您可以通过宏KE_BUILD_ID(TASK_GATTC,conidx)建立GATTC任务ID。这是当你处理GAPC_CONNECTION_REQ_IND消息,你得到的conidx首次连接。
例如,在prf_utils.c prf_disc_svc_send,由KE_MSG_ALLOC_DYN创建的消息执行发现由UUID(GATTC_DISC_CMD,KE_BUILD_ID(TASK_GATTC,con_info-> conidx),con_info-> prf_id,gattc_disc_cmd,ATT_UUID_16_LEN);
该对话框提供的客户端配置文件在内部跟踪的conidx的,所以如果你使用它们,你应该罚款。在RW-BLE-GATT-IS_1.pdf否则第4.4节几乎描述你需要的服务发现和大多数的这些消息都在prf_utils.c包装,你也可以使用一切。请注意,如果你已经知道什么样的服务和特性有远程对等和他们的ATT手柄(例如通过高速缓存),你可以直接使用手柄,而无需执行服务发现每次连接写入或读取时间特征。
任何人都可以帮助!
你好。作为指定由HTTP://support.dialog-semiconductor.com/system/files/resources/RW-BLE-GA ...一旦建立连接为每个外围一GATTC任务被实例化。您可以通过发送邮件GATT到相应的GATTC任务涉及到每个外设。每个GATTC任务都有一个“连接索引”或“conidx”。当您收到从GATTC任务(或管理连接本身GAPC任务)的消息,你可以在消息处理程序中编写KE_IDX_GET(src_id)的conidx。要发送消息给对应的GATTC任务,您可以通过宏KE_BUILD_ID(TASK_GATTC,conidx)建立GATTC任务ID。这是当你处理GAPC_CONNECTION_REQ_IND消息,你得到的conidx首次连接。
例如,在prf_utils.c prf_disc_svc_send,由KE_MSG_ALLOC_DYN创建的消息执行发现由UUID(GATTC_DISC_CMD,KE_BUILD_ID(TASK_GATTC,con_info-> conidx),con_info-> prf_id,gattc_disc_cmd,ATT_UUID_16_LEN);
该对话框提供的客户端配置文件在内部跟踪的conidx的,所以如果你使用它们,你应该罚款。在RW-BLE-GATT-IS_1.pdf否则第4.4节几乎描述你需要的服务发现和大多数的这些消息都在prf_utils.c包装,你也可以使用一切。请注意,如果你已经知道什么样的服务和特性有远程对等和他们的ATT手柄(例如通过高速缓存),你可以直接使用手柄,而无需执行服务发现每次连接写入或读取时间特征。