来自SDK的BLE_Central示例

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
4个职位/ 0个新
最后发表
prasanna
离线
最后看到:4个月6天前
加入: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”被调用和服务显示,如果宏被禁用,“发现”函数被调用。从UART输出中,我可以看到显示的服务是禁用或启用宏。你能解释一下在什么情况下宏是有用的吗?启用和禁用宏时会发生什么?浏览和发现之间的区别是什么?

提前谢谢。

问候,

Prasanna

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

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

/ MHv

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

你好MHv_Dialog,

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

谢谢

Prasanna

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

不是,o)

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

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

/ MHv