大家好、
我正在尝试编写一个简单的应用程序、以便从我的 SensorTag 读取运动应用传感器。 我正在通过大量示例进行工作、并且真的很难做到这一点。 论坛中很少提到这一点、大多数论坛中提到的是旧传感器、该传感器具有单独的 uuid、用于陀螺仪、磁力仪、加速器。
我的主要信息来源是 Anas Imtiaz 和 此主题编写的内容
在 Swift 3 (使用 xcode 8)中、我已经获得了 DiscoverdidServices 函数。 我使用的是正确的 uuid、并认为移动服务已被发现正常。 现在、我将进入下一个步骤、即 dodDiscoverCharacteristicisticsFor、但无法确定如何启用通知(或通常完成整个 discoverservices 步骤)。
我知道我需要将0x0001写入移动 uuid 配置。 到目前为止、我已经尝试过;
funcperipheral(peripheral: CBPeripheral!, didDiscoverCharacteristicsFor service: CBService, error: NSError?) {VAR enableValue = NSInteger (0x0001)
var enableBytes = NSData (字节:&enableValue、length:MemoryLayout .SIZE)
forcharateristic inservice.characteristics!{ letthisCharacteristic = charateristic asCBCharacteristic // check for data characteristics
ifthisCharacteristic.uuid== CBUIID(string: "F000AA81-0451-4000-B000-000000000000"){ // Enable Sensor Notification peripheral.setNotifyValue(true, forCharacteristic: thisCharacteristic) } // check for config characteristic ifthisCharacteristic.uuid== F000AA81-0451-4000-B000-000000000000{ // Enable Sensor peripheral.writeValue(enablyBytes as Data, for: thisCharacteristic, type: CBCharacteristicWriteType.WithResponse) } }}当我打印(thisCharactic.isNoil化)时、我会得到错误。
真的希望有一些帮助来越过这一点、并且能够读取陀螺仪、ACC 和 MAG 的原始 x、y、z 值。 如果有人能够进来并提供一些能让我到达那里的实际代码、我将不胜感激。 我甚至会在这里买啤酒:)
谢谢、
James