Чтение данных с периферийного устройства Bluetooth, которое отправляет данные массива? - PullRequest
0 голосов
/ 20 ноября 2018

Я пытаюсь прочитать данные массива, отправленные периферийным устройством, и проанализировать их в виде массива Swift.

Периферийное устройство отправляет данные для примера: массив [от 1 до 15] чисел. (Для полной шкалы это целое числозначения варьируются от 1000 до 2000).но сейчас я пытаюсь заставить его работать с 1 до 15 целочисленных значений.Мне удалось получить результат в строковом формате в кодированном формате.У меня вопрос, как я могу получить массив с 1 по 15 из Characteristic.value из метода didUpdateValueFor в swift.

Вот фрагмент кода для справки.

func peripheral(_ peripheral: CBPeripheral, didUpdateValueFor characteristic: CBCharacteristic, error: Error?) {

    if characteristic == rxCharacteristic {
        count += 1
        let data = characteristic.value
        print("Count: \(count), data: \(data! as NSData)")


    }
}

В консоли X-Codeрезультат:

Количество: 2, данные: <00000100 02>
Количество: 3, данные: <00030004 00050006 00070008 0009000a 000b000c>
Количество: 4, данные: <000d00>
Количество: 5, данные: <0e000f00>

1 Ответ

0 голосов
/ 21 ноября 2018

Используйте приведенный ниже код для извлечения значений Int в виде array.

Не забудьте сбросить count = 0 и values.removeAll() для запроса данных.

Я предполагаю, что ваше characteristics.value Int значение

var values:[Int] = []
    func peripheral(_ peripheral: CBPeripheral, didUpdateValueFor characteristic: CBCharacteristic, error: Error?) {

        if characteristic == rxCharacteristic {
            count += 1
            if let data = characteristic.value {
                var num = 0
                //Convert Data to Int
                data.getBytes(&num, length: MemoryLayout<Int>.size)
                values.append(num)
            }
            print("Count: \(count), data: \(data! as NSData)")
          }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...