bleATTPDUConfig

Создайте объект настройки для PDU ATT BLE

Загрузите Необходимый: Чтобы использовать bleATTPDUConfig, сначала загрузите Библиотеку Communications Toolbox™ для Протокола Bluetooth®. Для получения дополнительной информации смотрите, Получают и Управляют Дополнениями (MATLAB). В качестве альтернативы смотрите Библиотеку Communications Toolbox для Обмена файлами Протокола Bluetooth.

Описание

bleATTPDUConfig создает объект настройки для модуля данных о протоколе атрибута Bluetooth низкой энергии (BLE) (PDU ATT). Можно сконфигурировать PDU ATT BLE с помощью применимых свойств bleATTPDUConfig.

Создание

Описание

пример

cfgATT = bleATTPDUConfig создает bleATTPDUConfig объект настройки, cfgATT, для PDU ATT BLE со значениями по умолчанию.

пример

cfgATT = bleATTPDUConfig(Name,Value) свойства наборов с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Например, bleATTPDUConfig('Opcode','Error response') устанавливает Opcode свойство cfgATT к 'Error response'.

Свойства

развернуть все

Примечание

Для получения дополнительной информации о свойствах BLE ATT PDU и их соответствующих значениях, смотрите, что объем 3, часть F, разделяет 3.3 и 3.4 из Спецификации [2] Ядра Bluetooth.

Код операции PDU ATT BLE, заданный как одно из значений в этом списке. Каждое допустимое значение описывает код операции PDU ATT BLE.

  • 'MTU request'

  • 'Error response'

  • 'Information request'

  • 'Find by type value request'

  • 'Read by type request'

  • 'Read request'

  • 'Read response'

  • 'Read blob request'

  • 'Read blob response'

  • 'Read by group type request'

  • 'Write request'

  • 'Write response'

  • 'Write command'

  • 'Prepare write request'

  • 'Prepare write response'

  • 'Execute write request'

  • 'Execute write response'

  • 'Handle value notification'

  • 'Handle value indication'

  • 'Handle value confirmation'

  • 'Information response'

  • 'Find by type value response'

  • 'Read by type response'

  • 'Read by group type response'

Типы данных: char | string

Код операции запроса PDU ATT BLE, заданный как одно из значений в этом списке. Каждое допустимое значение описывает запрос PDU ATT BLE (от равноправного устройства), который вызвал ошибку.

  • 'MTU request'

  • 'Information request'

  • 'Find by type value request'

  • 'Read by type request'

  • 'Read request'

  • 'Read blob request'

  • 'Read by group type request'

  • 'Write request'

  • 'Prepare to write request'

  • 'Execute write request'

Типы данных: char | string

Формат информационного поля данных, заданного как '16 bit' или '128 bit'. Это значение задает формат информационного элемента данных в PDU с кодом операции 'Information Response'.

Типы данных: char | string

Обработайте значение атрибута, заданного как вектор символов 2D октета шестнадцатеричное значение в области значений [0x0001, 0xFFFF]. Это значение является уникальным идентификатором. Сервер динамически присваивает это значение.

Типы данных: char | string

Сообщение об ошибке, соответствующее, чтобы запросить PDU ATT BLE, заданный как одно из значений в этом списке. Каждое значение указывает на причину ошибки при соответствии PDU запроса от равноправного устройства.

  • 'Invalid handle'

  • 'Read not permitted'

  • 'Write not permitted'

  • 'Invalid PDU'

  • 'Insufficient authentication'

  • 'Request not supported'

  • 'Invalid offset'

  • 'Insufficient authorization'

  • 'Prepare queue full'

  • 'Attribute not found'

  • 'Attribute not long'

  • 'Insufficient encryption key size'

  • 'Invalid attribute value length'

  • 'Unlikely error'

  • 'Insufficient encryption'

  • 'Unsupported group type'

  • 'Insufficient resources'

Типы данных: char | string

Максимальный размер PDU ATT BLE, заданного как положительное целое число в области значений [23,65535]. Это наборы значений максимальный размер PDU ATT BLE в байтах, которые могут получить клиент или сервер.

Типы данных: uint8

Стартовый указатель диапазона указателя, указанного как 2D октет шестнадцатеричное значение в области значений [0x0001,0xFFFF]. Это значение указывает на значение указателя сервиса или характеристического объявления или стартового указателя области значений указателя. Это значение должно быть меньше EndHandle.

Типы данных: char | string

Конечный указатель диапазона указателя, указанного как 2D октет шестнадцатеричное значение в области значений [0x0001,0xFFFF]. Это наборы значений значение указателя конца объявления службы или характеристического объявления или конечного указателя области значений указателя. Это значение должно быть больше StartHandle.

Типы данных: char | string

Тип атрибута, заданного как четырехэлементный или вектор символов с 32 элементами или скаляр строки обозначение or16-октета 2D октета шестнадцатеричное значение.

Типы данных: char | string

Значение атрибута, заданного как одно из этих значений:

  • Вектор символов — Этот вектор представляет октеты в шестнадцатеричном формате.

  • Скаляр строки — Этот скаляр представляет октеты в шестнадцатеричном формате.

  • Числовой вектор элементов в области значений [0,255] — Этот вектор представляет октеты в десятичном формате. Максимальной длиной числового вектора является 65534.

  • n-by-2 символьный массив — Каждая строка представляет октет в шестнадцатеричном формате. Максимальной длиной символьного массива является 131068.

AttributeValue указывает на значение атрибута, чтобы храниться в или читать из базы данных атрибута. Задайте это значение в LSB первый формат.

Типы данных: char | string | double

Смещение следующего октета, который будет считан, заданный как целое число в области значений [0, 65535]. Можно использовать это значение в ATT BLE PDUs с кодами операции 'Read blob request', 'Prepare write request', и 'Prepare write response' идентифицировать смещение значения атрибута в базе данных атрибута.

Типы данных: double

Выполните флаг записи, заданный как 'Cancel all prepared writes' или 'Write all pending requests'. Можно определить действие (отбрасывание или запись), чтобы быть выполненными, когда это свойство используется.

Типы данных: char | string

Функции объекта

развернуть все

bleATTPDUСгенерируйте PDU ATT BLE
bleATTPDUDecodeДекодируйте PDU ATT BLE

Примеры

свернуть все

Создайте два уникальных объекта настройки PDU ATT BLE: один из типа 'Read by type request' и другой тип 'Error response' использование настроек по умолчанию и пар "имя-значение" соответственно.

Создайте объект настройки PDU ATT BLE с настройками по умолчанию.

cfgATT = bleATTPDUConfig;

Установите код операции PDU ATT BLE как 'Read by type request'. Просмотрите применимые свойства кода операции 'Read by type request'.

cfgATT.Opcode = 'Read by type request'
cfgATT = 
  bleATTPDUConfig with properties:

           Opcode: 'Read by type request'
      StartHandle: '0001'
        EndHandle: 'FFFF'
    AttributeType: '2800'

Создайте другой объект настройки PDU ATT BLE, на этот раз с помощью пар "имя-значение". Измените код операции PDU ATT BLE в 'Error response'. Просмотрите применимые свойства кода операции 'Error response'.

cfgATT = bleATTPDUConfig('Opcode','Error response')
cfgATT = 
  bleATTPDUConfig with properties:

             Opcode: 'Error response'
    RequestedOpcode: 'Read request'
    AttributeHandle: '0001'
       ErrorMessage: 'Invalid handle'

Создайте объект настройки PDU ATT BLE. Измените значение кода операции к 'Read by type request'. Просмотрите применимые свойства заданного значения кода операции.

cfgTx = bleATTPDUConfig;
cfgTx.Opcode = 'Read by type request'
cfgTx = 
  bleATTPDUConfig with properties:

           Opcode: 'Read by type request'
      StartHandle: '0001'
        EndHandle: 'FFFF'
    AttributeType: '2800'

Сгенерируйте PDU ATT BLE от соответствующего объекта настройки.

attPDU = bleATTPDU(cfgTx);

Декодируйте сгенерированный PDU ATT BLE. Возвращенное состояние указывает, что декодирование успешно. Просмотрите применимые свойства кода операции 'Error response'.

[status, cfgRx] = bleATTPDUDecode(attPDU)
status = 
Success
cfgRx = 
  bleATTPDUConfig with properties:

           Opcode: 'Read by type request'
      StartHandle: '0001'
        EndHandle: 'FFFF'
    AttributeType: '2800'

Ссылки

[1] Bluetooth Hompage. https://www.bluetooth.com/.

[2] Специальная группа (SIG) Bluetooth. "Спецификация ядра Bluetooth". Версия 5.0.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Функции

Введенный в R2019b