Я быстро создаю приложение iOS, используя CoreBluetooth для связи BLE. Я могу подключиться и подписаться на характеристики устройства Arduino. Я могу успешно читать данные с этого устройства Arduino, но сейчас я пишу с помощью Arduino только одно значение с плавающей запятой. Я знаю, что didUpdateValueFor считывает его как объект данных, и вам нужно преобразовать данные в значения, которые вы ищете. Мне удалось преобразовать его в значение с плавающей запятой, как показано ниже. Я хочу отправить несколько значений с плавающей запятой, в частности, это показания акселерометра, значения с плавающей запятой XY Z. Я отправляю их как массив с плавающей запятой, но у меня возникают проблемы с преобразованием и отображением значений с плавающей запятой на стороне приложения. Любая помощь приветствуется. Спасибо.
func peripheral(_ peripheral: CBPeripheral, didUpdateValueFor characteristic: CBCharacteristic, error: Error?) {
guard characteristic == rxCharacteristic,
let data:Data = characteristic.value
else { return }
let number: Float = data.withUnsafeBytes {
(pointer: UnsafePointer<Float>) -> Float in
return pointer.pointee
}
print("\nValue Received : ", number)