iOS 蓝牙问题

标签 ios serial-port bluetooth-lowenergy core-bluetooth

我想使用我的 iPad 连接 OLS426 蓝牙低功耗模块,通过蓝牙模块上的串行端口发送数据。我已成功连接蓝牙模块。在连接中,iPad作为中枢,蓝牙模块作为外设。

这是我的问题:

(1)

    [peripheral setNotifyValue:YES forCharacteristic:characteristic];

我在didDiscoverCharacteristicsForService中订阅了蓝牙模块。

    - (void)peripheral:(CBPeripheral *)peripheral didUpdateNotificationStateForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{

        NSLog(@"Subscribed");

}

订阅后,终端上打印“已订阅”日志。这是否意味着我已成功订阅该设备?

(2)

我还尝试在 didDiscoverCharacteristicsForService 中写入特征值。

    [peripheral writeValue: data forCharacteristic:characteristic type:CBCharacteristicWriteWithResponse];

由于我将类型设置为CBCharacteristicWriteWithResponse,所以我认为如果写入不成功,就会出现错误。然而,没有错误。

    - (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error{
        NSLog(@"Hello sent");
    }

我的问题是为什么在我设置特征值后没有打印“Hello sent”?

(3)

我想通过蓝牙模块上的串口发送一些数据。我只能从特征(例如心率监测器)读取数据,或将数据写入特征。在蓝牙模块的服务中,我发现一个叫做“串口”的服务,它下面有一个特性叫做“先进先出”。所以我想我应该将数据写入该特征,以便通过串行端口发送数据。谁能告诉我我的想法是否正确?

最佳答案

1) 是的。

2) 当特征值发生独立于您自己写入该特征的变化时,将调用 didUpdateValueForCharacteristic

3) 您读过connectBlue document吗?如何通过 FIFO 特性读取/写入数据?

关于iOS 蓝牙问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24719473/

相关文章:

ios - RxSwift Observable.empty() 正在调用 onNext

python - 哪种语言更适合串行编程和使用 MySQL 数据库? Python?真实基础?

bluetooth-lowenergy - 为什么 BLE 4.2 比 BLE 4.1 快

macos - GNU SCREEN - MAC OS X 10.8.2 的 USB 串行 tty 通信问题

c - Linux 上的 GATT 库位置

ios - 从另一个应用程序连接到蓝牙设备

ios - 'CGFloat' 不可转换为 'Float' 及更多

ios - 如何为 iOS 应用程序实现 iOS 自动续订订阅收据验证

ios - 永远不会调用完成 block ?

c# - 如何在 C++ 中创建 dll 以便在 C# 中使用