bleATTPDUConfig

Объект строения для BLE ATT PDU

Требуется загрузка: Чтобы использовать bleATTPDUConfig, сначала загрузите библиотеку Communications Toolbox™ для Bluetooth® Протокол. Для получения дополнительной информации см. раздел «Получение и управление дополнениями». Другой способ см. в разделе Библиотека Communications Toolbox для обмена файлами протокола Bluetooth.

Описание

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

Создание

Описание

пример

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

пример

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

Свойства

расширить все

Примечание

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

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

  • '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

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

  • '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

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

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

Сообщение об ошибке, соответствующее запросу BLE ATT PDU, заданное в качестве одного из значений в этом списке. Каждое значение указывает причину ошибки, соответствующей запросу 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

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

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

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

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

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

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

Тип атрибута, заданный как вектор символов с четырьмя или 32 элементами или строковый скаляр, обозначающий шестнадцатеричное значение с двумя октетами или 16 октетами.

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

Значение атрибута, заданное в качестве одного из следующих значений:

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

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

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

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

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

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

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

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

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

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

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

расширить все

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

Примеры

свернуть все

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

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

cfgATT = bleATTPDUConfig;

Установите opcode BLE ATT PDU следующим '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'

Создайте другой объект строения BLE ATT PDU, на этот раз используя пары "имя-значение". Измените код операции BLE ATT PDU на '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 BLE ATT. Измените значение opcode на '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'

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

attPDU = bleATTPDU(cfgTx);

Декодируйте сгенерированный BLE ATT PDU. Возвращенное состояние указывает, что декодирование успешно. Просмотрите применимые свойства опкодов '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 Technology. Bluetooth Technology Website | Официальный сайт Bluetooth Technology. Доступ к 22 ноября 2019 года. https://www.bluetooth.com/.

[2] Группа специальных интересов Bluetooth (SIG). Bluetooth Core Спецификации. Версия 5.1. https://www.bluetooth.com/.

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

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

.
Введенный в R2019b