Я читаю данные акселерометра с ibeacon, который отображается в следующем формате:
x hex string value: "0160" y hex string value: "ff14" z hex string value: "0114"
Я ожидаю увидеть эти значения как двойные значения в диапазоне от 0g до 1g. Как бы вы конвертировали эти шестнадцатеричные строки в двойные по быстрому?
Получить целочисленное значение из шестнадцатеричной строки с Int(_:radix:)
Int(_:radix:)
let string = "ff14" let hexValue = Int(string, radix: 16)!
и разделить на 65535 (16 бит), чтобы получить значения от 0,0 до 1,0
let result = Double(hexValue) / 65535