如何将十六进制值写入BLE设备?

英式

我有一个BLE设备原型。我能够扫描设备,然后连接到它。我也可以将其密码写为BLE特性。密码为字符串。但是,当我尝试写入其他以十六进制表示的值时,是否在不同时间写入状态4和状态13失败的错误?同样,nRF应用程序也可以使用。我要去哪里错了。下面是我的代码。

  public boolean writeCharacteristic(BluetoothGatt mBluetoothGatt) {

    //check mBluetoothGatt is available
    if (mBluetoothGatt == null) {
        Log.e("++++", "lost connection");
        return false;
    }
    String SERVICE_STRING = "3fc2d576-0249-11e7-93ae-----------";
    UUID SERVICE_UUID = UUID.fromString(SERVICE_STRING);
    BluetoothGattService Service = mBluetoothGatt.getService(SERVICE_UUID);
    if (Service == null) {
        Log.e("++++++", "service not found!");
        return false;
    }

    BluetoothGattCharacteristic charac = Service
            .getCharacteristic(UUID.fromString("3fc2d576-0249-11e7-93ae-------------"));
    if (charac == null) {
        Log.e("+++", "char not found!");
        return false;
    }
    String mValue = "0x01";
    byte[] value = mValue.getBytes();
    //value[0] = (byte) (0x00);
    String pwd = "WWW";
   // byte[] value = mValue.getBytes();
    charac.setValue(0x01,BluetoothGattCharacteristic.FORMAT_SINT8,0);
    boolean status = mBluetoothGatt.writeCharacteristic(charac);
    return status;
}
蒽醌

让我们charac.setValue(0x01,BluetoothGattCharacteristic.FORMAT_SINT‌​8,0);换成charac.setValue(new byte[]{0x01});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将十六进制字符串转换为十六进制数字

如何将十六进制值传递给字符串-Android

如何将十六进制字符串转换为十进制值

如何将单独的int值转换为十六进制字节数组

如何将RGB值向量转换为十六进制

如何将两个或更多字符的十六进制值相加?

如何使用该十六进制数据将ble命令发送到设备?

如何将十进制或十六进制值转换为整数?

如何将值转换为十六进制以在javascript中发送数组

如何将十六进制数字的列中的每个值逐位反转?

如何将8位整数转换为十六进制颜色值?

如何将for循环内的整数作为十六进制值输出到文件

该虚拟机如何将指令转换为十六进制值?

如何将十六进制值放入24位结构中

Javascript:如何将十六进制数据转换为二进制并将其写入文件

十六进制值未写入图像

如何将十六进制编码的字符串转换为十六进制整数

如何将十六进制颜色值设置为导航栏

如何将 std::stringstream 转换为 uintptr_t 并保持十六进制值?

如何将处理器编号转换为 32 位十六进制值

如何将十六进制值的总和转换回十六进制值

如何将十六进制字符串转换为列表中的十六进制值块?

TCL:如何将十六进制值转换为有符号整数?

如何将十六进制日期值转换为 hive 中的日期值

如何将 webm 的持续时间元数据值计算为十六进制?

如何将存储为字符串的十六进制值转换为 Python 中的十六进制值?

如何将字符串中的十六进制值转换为实际字节

如何将十六进制值的字符数组作为纯文本通过串行发送

这是正确的方法吗?如何将十六进制值放入字符数组?