bleLLDataChannelPDUConfig

Объект строения для PDU канала данных BLE LL

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

Описание

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

Создание

Описание

пример

cfgLLData = bleLLDataChannelPDUConfig создает объект строения, cfgLLData, для BLE LL канала данных PDU со значениями по умолчанию.

пример

cfgLLData = bleLLDataChannelPDUConfig(Name,Value) устанавливает свойства с помощью одной или нескольких пар "имя-значение". Заключайте каждое имя свойства в кавычки. Для примера, bleLLDataChannelPDUConfig('LLID','Data (start fragment/complete)') настраивает cfgLLData с типом BLE LL канала данных PDU в качестве PDU данных.

Свойства

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

Примечание

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

Ссылка идентификатор слоя, заданный как вектор символов или строковый скаляр, чтобы описать тип PDU канала данных BLE LL. Можно задать 'LLID' как одно из следующих значений:

  • 'Data (continuation fragment/empty)'

  • 'Data (start fragment/complete)'

  • 'Control'

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

Следующий ожидаемый порядковый номер, заданный как 0 или 1. Это свойство указывает либо на подтверждение для последнего полученного пакета, либо на запрос на пересылку последнего переданного пакета от равноправного узла.

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

Передающий порядковый номер пакета, заданный как 0 или 1. Это свойство указывает порядковый номер передаваемого пакета.

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

Индикация для дополнительных данных, заданная в виде числа или логического значения 1 (true) или 0 (false). A true или 1 значение указывает, что отправитель имеет больше данных для отправки.

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

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

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

BLE LL управляет объектом строения полезной нагрузки PDU, заданным как bleLLControlPDUConfig объект. Различные поля этого значения настраиваются с помощью параметров bleLLControlPDUConfig. Значение по умолчанию этого свойства является объектом типа bleLLControlPDUConfig со всеми свойствами, установленными на их значения по умолчанию. Это свойство применимо для генерации и декодирования блока управления BLE LL.

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

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

bleLLDataChannelPDUСгенерируйте BLE LL канал данных PDU
bleLLDataChannelPDUDecodeДекодируйте BLE LL канал данных PDU
bleLLControlPDUConfigСтроение объект для BLE LL управления полезной нагрузкой PDU строения

Примеры

свернуть все

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

cfgLLData = bleLLDataChannelPDUConfig
cfgLLData = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Data (continuation fragment/empty)'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'

Задайте значение LLID следующим 'Data (start fragment/complete)' и просмотрите соответствующие свойства.

cfgLLData.LLID = 'Data (start fragment/complete)'
cfgLLData = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Data (start fragment/complete)'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'

Создайте два уникальных объекта строения PDU канала данных LL для блока управления PDU типа 'Channel map indication' и 'Version indication' использование пар "имя-значение".

Создайте объект строения полезной нагрузки PDU управления LL BLE, 'cfgControl', для управляющего PDU с опкодом 'Channel map indication'. Просмотрите соответствующие свойства, соответствующие указанному опкоду.

cfgControl = bleLLControlPDUConfig('Opcode','Channel map indication')
cfgControl = 
  bleLLControlPDUConfig with properties:

          Opcode: 'Channel map indication'
         Instant: 0
    UsedChannels: [1x37 double]

Создайте объект строения канала данных BLE LL путем определения значений 'LLID' как 'Control' и 'ControlConfig' как 'cfgControl'. Просмотр свойств 'cfgLLData'.

 cfgLLData = bleLLDataChannelPDUConfig('LLID','Control', ...
    'ControlConfig',cfgControl)
cfgLLData = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Control'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'
        ControlConfig: [1x1 bleLLControlPDUConfig]

Создайте другой объект строения канала данных BLE LL, 'cfgControl' для управляющего PDU на этот раз задает опкод следующим 'Version indication'. Просмотр применимых свойств 'cfgControl' соответствующий указанному опкоду.

cfgControl.Opcode = 'Version indication';
cfgControl.SubVersionNumber = '008E'
cfgControl = 
  bleLLControlPDUConfig with properties:

               Opcode: 'Version indication'
        VersionNumber: '5.0'
    CompanyIdentifier: 'FFFF'
     SubVersionNumber: '008E'

Создайте объект строения канала данных BLE LL, 'cfgLLData', путем определения значений 'ControlConfig' как 'cfgControl' и просмотрите применимые свойства.

cfgLLData.ControlConfig = cfgControl
cfgLLData = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Control'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'
        ControlConfig: [1x1 bleLLControlPDUConfig]

Создайте объект строения PDU канала данных LL BLE, 'cfgTx', для PDU данных, использующего строение по умолчанию. Просмотрите соответствующие свойства по умолчанию.

cfgTx = bleLLDataChannelPDUConfig
cfgTx = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Data (continuation fragment/empty)'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'

Инициализируйте значение CRC, соответствующее объекту строения 'cfgTx'.

cfgTx.CRCInitialization = '123456';

Сгенерируйте PDU канала данных BLE LL с помощью объекта строения PDU данных, 'cfgTx' и полезную нагрузку верхнего уровня '030004000A0100'.

pdu = bleLLDataChannelPDU(cfgTx,'030004000A0100');

Декодируйте сгенерированный канал данных LL BLE PDU путем инициализации значения CRC. Возвращенное состояние указывает, что декодирование успешно. Просмотрите значения 'status', 'cfgRx' и 'llPayload'.

crcInit = '123456';
[status, cfgRx, llPayload] = bleLLDataChannelPDUDecode(pdu, crcInit)
status = 
Success
cfgRx = 
  bleLLDataChannelPDUConfig with properties:

                 LLID: 'Data (continuation fragment/empty)'
                 NESN: 0
       SequenceNumber: 0
             MoreData: 0
    CRCInitialization: '012345'

llPayload = 7x2 char array
    '03'
    '00'
    '04'
    '00'
    '0A'
    '01'
    '00'

Ссылки

[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