来自SDK的BLE_Central示例

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
4个职位/ 0个新职位
最后发表
prasanna
离线
最后看到:6个月2个星期前
加入:2020-09-29 56
来自SDK的BLE_Central示例

你好,对话框,

我正在SDK_10.0.10.118/projects/dk_apps/features/中测试“BLE_central”示例。我不明白宏“CFG_USE_BROWSE_API”宏在“ble_central_task.c”中使用了什么。我所理解的唯一区别是,如果启用宏,则调用“browse_svc”和“browse_completed”函数并显示服务,如果禁用宏,则调用“discover”函数。从UART输出中,我可以看到服务显示宏是禁用的还是启用的。你能解释一下在什么情况下宏是有用的吗?当启用和禁用宏时发生了什么?浏览和发现之间的区别是什么?

提前谢谢。

问候,

Prasanna

设备:
MHv_Dialog
离线
最后看到:1个月2个星期前
工作人员
加入:15 2013-12-06
Browse API不会

浏览API将不会构造和保留有关对等关贸总协定数据库的信息;Discovery API将保留此功能供以后使用。在“实际”实现中,您可能希望至少保留一些数据库句柄,以便与对等设备进行交互。

/ MHv

prasanna
离线
最后看到:6个月2个星期前
加入:2020-09-29 56
你好MHv_Dialog,

你好MHv_Dialog,

谢谢你的回复。到底什么是保留信息?你的意思是下一次当我们连接远端设备时,对端设备GATT数据库中存储了一些关于远端设备服务的信息?你能解释一下对等设备存储的是什么类型的数据吗?

谢谢

Prasanna

MHv_Dialog
离线
最后看到:1个月2个星期前
工作人员
加入:15 2013-12-06
不是,o)

不是,o)

我们只在连接期间保留它。如果在发现服务后需要与对等设备进行接口,这将非常有用。假设外围设备有一个LED,当用户按下中央按钮时,我们可以根据需要打开或关闭它。我们可以通过写外围设备提供的特性来做到这一点。我们需要有一个特征值字段的句柄,以便写入它。因为我们在发现过程中保留了对特征的处理,所以当我们需要信息时,我们就可以使用这些信息——比如当用户按下前面提到的按钮时。我希望这能解释清楚。

您可以将外围设备视为服务(托管)数据库。为了使用这个数据库,客户机(本例中的中心设备)将使用发现来检索数据库条目的键或索引(句柄)。这个发现还告诉客户端(在我们的例子中是中心)它可以对这些数据库字段做什么——读、写等等。

/ MHv