Home Articles

核心 - 蓝牙双向通信

Asked
Viewed 566 times
3

阅读文档,我已经构建了两个使用BLE连接2个iDevices的应用程序 . 一个设备是Central,另一个是Peripheral . 中央正在寻找外围设备,当找到它时,探索其服务和特性,而不是连接相关的特性 .

当更新来自该特性时,我想用来自中心到外围设备的数据进行响应 .

问题是,我是否必须在一侧从中央切换到外围,而在另一侧则反之亦然,以便做出响应?意思是,如果我想进行简单的聊天,他们总是要切换?如果是 - 这使得聊天成为问题,因为两个设备都有可能转到外围设备并且正在尝试同时发送消息 .

因此,如果有一种方法可以进行双向通信,那么如何进行双向通信,以及任何有关该教程的链接都会很棒 . 感谢名单 .

1 Answer

  • 4

    BLE通信已经是双向的 .

    Central -> Peripheral :写一个特征 .

    • 外围设备必须具有可写特性 .

    • 中央可以通过这种方式发送数据 .

    Central <- Peripheral :更新中央已订阅的特征值 .

    • 外围设备必须具有动态特性才能更新其值 .

    • 中央订阅有关该特征的通知/指示 .

    • 外围设备更新特征值,后者又将更新后的值发送给中心 .

    要了解它是如何工作的,请查看BTLE Transfer demo . 你应该花一些时间研究它的运作方式 . Core Bluetooth Programming Guide也有很好的例子来加深理解 .

Related