Объект конфигурации для рекламного канала BLE LL PDU
Требуется загрузка: Для использования bleLLAdvertisingStartPDUConfig сначала загрузите библиотеку Communications Toolbox™ Library для протокола Bluetooth ®. Дополнительные сведения см. в разделе Получение надстроек и управление ими. Кроме того, см. библиотеку Communications Toolbox Library для обмена файлами по протоколу Bluetooth.
bleLLAdvertisingChannelPDUConfig создает объект конфигурации для блока протокольных данных (PDU) канального уровня (LL) с низкой энергией Bluetooth, используя значения по умолчанию и заданные значения. Можно настроить PDU рекламного канала BLE LL, используя применимые свойства bleLLAdvertisingChannelPDUConfig.
создает объект конфигурации, cfgLLAdv = bleLLAdvertisingChannelPDUConfigcfgLLAdv, для рекламного канала BLE LL PDU со значениями по умолчанию.
создает объект конфигурации PDU рекламного канала BLE путем задания свойств с использованием одной или нескольких пар имя-значение. Заключите каждое имя свойства в кавычки. Например, cfgLLAdv = bleLLAdvertisingChannelPDUConfig(Name,Value)bleLLAdvertisingChannelPDUConfig('PDUType','Scan response') настраивает cfgLLAdv с типом рекламного канала BLE LL PDU как 'Scan response'.
Примечание
Для получения дополнительной информации о свойствах PDU рекламного канала BLE LL и их соответствующих значениях см. том 6, часть B, раздел 2,3 спецификации ядра Bluetooth [2].
PDUType - Тип PDU рекламного канала BLE LL'Advertising indication' (по умолчанию) | 'Advertising direct indication' | 'Advertising non connectable indication' | ...Тип PDU рекламного канала BLE LL, заданный как вектор символов или строковый скаляр для описания типа PDU рекламного канала BLE LL. Можно указать 'PDUType' как одно из следующих значений:
'Advertising indication'
'Advertising direct indication'
'Advertising non connectable indication'
'Scan request'
'Scan response'
'Connection indication'
'Advertising scannable indication'
Типы данных: char | string
ChannelSelection - Алгоритм выбора канала'Algorithm1' (по умолчанию) | 'Algorithm2'Алгоритм выбора канала, указанный как 'Algorithm1' или 'Algorithm2' для указания типа алгоритма, используемого для переключения между каналами.
Типы данных: char | string
AdvertiserAddressType - Тип адреса устройства рекламодателя'Random' (по умолчанию) | 'Public'Тип адреса устройства рекламодателя, указанный как 'Random' или 'Public' для указания типа адреса рекламодателя в пакете.
Типы данных: char | string
AdvertiserAddress - Адрес устройства рекламодателя'0123456789AB' (по умолчанию) | 12-элементный символьный вектор | строковый скаляр, обозначающий шеститетовое шестнадцатеричное значениеАдрес устройства рекламодателя, заданный как 12-элементный символьный вектор или строковый скаляр, обозначающий шеститетовое шестнадцатеричное значение для указания адреса устройства рекламодателя.
Типы данных: char | string
TargetAddressType - Тип адреса целевого устройства'Random' (по умолчанию) | 'Public'Тип адреса целевого устройства, указанный как 'Random' или 'Public' для указания типа адреса целевого устройства при передаче направленного рекламного пакета.
Типы данных: char | string
TargetAddress - Адрес целевого устройства'0123456789CD' (по умолчанию) | 12-элементный символьный вектор | строковый скаляр, обозначающий шеститетовое шестнадцатеричное значениеАдрес целевого устройства, заданный как 12-элементный символьный вектор или строковый скаляр, обозначающий шеститетовое шестнадцатеричное значение для указания адреса целевого устройства при передаче направленного рекламного пакета.
Типы данных: char | string
ScannerAddressType - Тип адреса устройства сканера'Random' (по умолчанию) | 'Public'Тип адреса устройства сканера, указанный как 'Random' или 'Public' для указания типа адреса устройства сканирования при передаче пакета запроса сканирования.
Типы данных: char | string
ScannerAddress - Адрес устройства сканера'0123456789CD' (по умолчанию) | 12-элементный символьный вектор | строковый скаляр, обозначающий шеститетовое шестнадцатеричное значениеАдрес устройства сканера, заданный как 12-элементный символьный вектор или строковый скаляр, обозначающий шеститетовое шестнадцатеричное значение для указания адреса устройства сканера при передаче пакета запроса сканирования.
Типы данных: char | string
InitiatorAddressType - Тип адреса устройства-инициатора'Random' (по умолчанию) | 'Public'Тип адреса устройства-инициатора, указанный как 'Random' или 'Public' для указания типа адреса устройства-инициатора при передаче пакета индикации соединения.
Типы данных: char | string
InitiatorAddress - Адрес устройства инициатора'0123456789CD' (по умолчанию) | 12-элементный символьный вектор | строковый скаляр, обозначающий шеститетовое шестнадцатеричное значениеАдрес устройства-инициатора, заданный как 12-элементный символьный вектор или строковый скаляр, обозначающий шеститетовое шестнадцатеричное значение для указания адреса устройства-инициатора при передаче пакета индикации соединения.
Типы данных: char | string
AdvertisingData - Рекламные данные'020106' (по умолчанию) | символьный вектор | строковый скалярный | числовой вектор элементов в диапазоне [0,31] | nмассив символов -by-2Рекламные данные, указанные как одно из следующих значений:
Символьный вектор - этот вектор представляет октеты в шестнадцатеричном формате.
Строковый скаляр - этот скаляр представляет октеты в шестнадцатеричном формате.
Числовой вектор элементов в диапазоне [0,31] - этот вектор представляет октеты в десятичном формате.
nМассив символов -by-2 - каждая строка представляет октет в шестнадцатеричном формате.
Это свойство указывает рекламные данные, которые устройство отправляет в пакете рекламы.
Типы данных: char | string | double
ScanResponseData - Данные ответа сканирования'020106' (по умолчанию) | символьный вектор | строковый скалярный | числовой вектор элементов в диапазоне [0,31] | nмассив символов -by-2Сканировать данные ответа, указанные как одно из следующих значений:
Символьный вектор - этот вектор представляет октеты в шестнадцатеричном формате.
Строковый скаляр - этот скаляр представляет октеты в шестнадцатеричном формате.
Числовой вектор элементов в диапазоне [0,31] - этот вектор представляет октеты в десятичном формате.
nМассив символов -by-2 - каждая строка представляет октет в шестнадцатеричном формате.
Это свойство указывает данные ответа на сканирование, которые устройство отправляет в пакете ответа на сканирование (при получении запроса на сканирование).
Типы данных: char | string | double
AccessAddress - Уникальный адрес подключения'01234567' (по умолчанию) | восьмиэлементный символьный вектор или строковый скалярУникальный адрес соединения, указанный как восьмиэлементный символьный вектор или строковый скаляр. Это свойство указывает уникальный 32-битный адрес, генерируемый LL для нового соединения или для периодической рекламы между двумя устройствами.
Типы данных: char | string
CRCInitialization - значение инициализации CRC'012345' (по умолчанию) | шестиэлементный символьный вектор | трехоктетное шестнадцатеричное значениеЗначение инициализации CRC, указанное как шестиэлементный символьный вектор или строковый скаляр, обозначающий трехоктетное шестнадцатеричное значение. Это свойство используется в качестве значения инициализации для вычисления CRC.
Типы данных: char | string
WindowSize - Размер окна передачи1 (по умолчанию) | неотрицательное целое числоРазмер окна передачи, заданный как неотрицательное целое число в диапазоне [1, Mws], где Mws - меньшее из 8 и ConnectionInterval-1. Это свойство указывает размер окна, в пределах которого ведущее устройство передает пакет данных, а подчиненное устройство прослушивает пакет данных после установления соединения. Каждый блок принимается равным 1,25 мс, чтобы размер окна (WindowSize× 1,25) находится в диапазоне от 1,25 мс до минимума (10 мс, ((ConnectionInterval× 1,25) - 1,25) мс).
Типы данных: double
WindowOffset - Смещение окна передачи0 (по умолчанию) | неотрицательное целое числоСмещение окна передачи, указанное как неотрицательное целое число в диапазоне [0, Mwo], где Mwo меньше 3200 и ConnectionInterval. Это свойство указывает смещение окна, после которого начинается окно передачи. Каждая единица измерения принимается равной 1,25 мс, чтобы результирующее смещение окна (WindowOffset× 1,25) находится в диапазоне от 0 мс до (ConnectionInterval× 1,25) мс.
Типы данных: double
ConnectionInterval - Интервал подключения6 (7.5 ms) (по умолчанию) | положительное целое числоИнтервал подключения, заданный как положительное целое число в диапазоне [6, 3200]. Это свойство указывает интервал между началом двух последовательных событий подключения. Каждый блок принимается равным 1,25 мс, так что результирующий интервал соединения (ConnectionInterval× 1,25) находится в диапазоне от 7,5 мс до 4,0 с.
Типы данных: double
SlaveLatency - Задержка подчиненного устройства0 (по умолчанию) | неотрицательное целое числоЗадержка подчиненного устройства, заданная как неотрицательное целое число в диапазоне [0, Msl], где Msl меньше 499 и ((ConnectionInterval×10) / ((ConnectionInterval×1.25) ×2))-1. Это свойство указывает количество событий подключения, которые подчиненный узел может пропустить при прослушивании пакетов от ведущего.
Типы данных: double
ConnectionTimeout - Тайм-аут контроля подключения10 (по умолчанию) | положительное целое числоВремя ожидания контроля соединения, указанное как положительное целое число в диапазоне [Mct, 3200], где Mct больше 10 и (1 +SlaveLatency)×(ConnectionInterval×1.25) ×2)/10. Это свойство указывает тайм-аут для соединения, если в течение этого времени не получен действительный пакет. Каждый блок принимается равным 10 мс, так что результирующий тайм-аут соединения (ConnectionInterval× 10) находится в диапазоне от 100 мс до 32,0 с.
Типы данных: double
UsedChannels - Перечень используемых каналов передачи данныхrow vector containing the channel indices between [0:36] (по умолчанию) | целочисленный вектор со значениями элементов в диапазоне [0, 36]Список используемых каналов данных, указанный как целочисленный вектор со значениями элементов в диапазоне [0, 36]. Длина вектора должна быть больше 1. По крайней мере два канала должны быть установлены в качестве используемых (хороших) каналов. Это свойство указывает набор хороших каналов, классифицированных ведущим.
Типы данных: double
HopIncrement - Число инкрементов прыжков5 (по умолчанию) | положительное целое числоЧисло приращения прыжков, указанное как целое число в диапазоне [5, 16]. Это свойство указывает счетчик приращения прыжков, который должен использоваться для скачкообразной перестройки между каналами данных.
Типы данных: double
SleepClockAccuracy - Точность основных часов сна'251 to 500 ppm' (по умолчанию) | '151 to 250 ppm' | '101 to 150 ppm' | ...Точность главных часов сна, заданная как вектор символов или строковый скаляр, указывающий худшую точность главных часов сна. Можно указать SleepClockAccuracy как одно из следующих значений:
'251 to 500 ppm'
'151 to 250 ppm'
'101 to 150 ppm'
'76 to 100 ppm'
'51 to 75 ppm'
'31 to 50 ppm'
'21 to 30 ppm'
'0 to 20 ppm'
Типы данных: char | string
bleLLAdvertisingChannelPDU | Создание рекламного канала BLE LL PDU |
bleLLAdvertisingChannelPDUDecode | Декодирование рекламного канала BLE LL PDU |
В этом примере используются:
Создайте объект конфигурации рекламного канала BLE LL и просмотрите соответствующие свойства по умолчанию.
cfgLLAdv = bleLLAdvertisingChannelPDUConfig
cfgLLAdv =
bleLLAdvertisingChannelPDUConfig with properties:
PDUType: 'Advertising indication'
ChannelSelection: 'Algorithm1'
AdvertiserAddressType: 'Random'
AdvertiserAddress: '0123456789AB'
AdvertisingData: [3x2 char]
В этом примере используются:
Создание двух уникальных объектов конфигурации рекламных каналов BLE LL 'Scan response' и 'Connection indication' используя пары имя-значение.
Создайте объект конфигурации PDU рекламного канала BLE LL, 'cfgLLAdv', путем установки значений типа PDU как 'Scan response', адрес рекламодателя как '1234567890AB'и сканировать данные ответа как '020106020AD3' используя пары имя-значение. Просмотрите соответствующие свойства.
cfgLLAdv = bleLLAdvertisingChannelPDUConfig(... 'PDUType','Scan response', ... 'AdvertiserAddress','1234567890AB', ... 'ScanResponseData','020106020AD3')
cfgLLAdv =
bleLLAdvertisingChannelPDUConfig with properties:
PDUType: 'Scan response'
ChannelSelection: 'Algorithm1'
AdvertiserAddressType: 'Random'
AdvertiserAddress: '1234567890AB'
ScanResponseData: [6x2 char]
Создайте другой объект конфигурации PDU рекламного канала BLE LL, 'cfgLLAdv'и измените тип PDU на 'Connection indication'. Установите значения интервала подключения как 64 и набор каналов данных как [0 4 12 16 18 24 25]. Просмотрите соответствующие свойства.
cfgLLAdv = bleLLAdvertisingChannelPDUConfig('PDUType', ... 'Connection indication'); cfgLLAdv.ConnectionInterval = 64; cfgLLAdv.UsedChannels = [0 4 12 16 18 24 25]
cfgLLAdv =
bleLLAdvertisingChannelPDUConfig with properties:
PDUType: 'Connection indication'
ChannelSelection: 'Algorithm1'
AdvertiserAddressType: 'Random'
AdvertiserAddress: '0123456789AB'
InitiatorAddressType: 'Random'
InitiatorAddress: '0123456789CD'
AccessAddress: '01234567'
CRCInitialization: '012345'
WindowSize: 1
WindowOffset: 0
ConnectionInterval: 64
SlaveLatency: 0
ConnectionTimeout: 10
UsedChannels: [0 4 12 16 18 24 25]
HopIncrement: 5
SleepClockAccuracy: '251 to 500 ppm'
В этом примере используются:
Создайте объект конфигурации PDU рекламного канала BLE LL, 'cfgTx'. Установите значения типа PDU как 'Connection indication', интервал подключения как 8и набор каналов данных как [0 4 12 16 18 24 25].
cfgTx = bleLLAdvertisingChannelPDUConfig('PDUType', ... 'Connection indication'); cfgTx.ConnectionInterval = 8; cfgTx.UsedChannels = [0 4 12 16 18 24 25]
cfgTx =
bleLLAdvertisingChannelPDUConfig with properties:
PDUType: 'Connection indication'
ChannelSelection: 'Algorithm1'
AdvertiserAddressType: 'Random'
AdvertiserAddress: '0123456789AB'
InitiatorAddressType: 'Random'
InitiatorAddress: '0123456789CD'
AccessAddress: '01234567'
CRCInitialization: '012345'
WindowSize: 1
WindowOffset: 0
ConnectionInterval: 8
SlaveLatency: 0
ConnectionTimeout: 10
UsedChannels: [0 4 12 16 18 24 25]
HopIncrement: 5
SleepClockAccuracy: '251 to 500 ppm'
Создайте PDU рекламного канала LL BLE, используя соответствующий объект конфигурации.
pdu = bleLLAdvertisingChannelPDU(cfgTx);
Декодировать сформированный PDU рекламного канала LLE LL. Возвращенное состояние указывает на успешное декодирование. Просмотр выходных данных 'status' и 'cfgRx'.
[status, cfgRx] = bleLLAdvertisingChannelPDUDecode(pdu)
status = Success
cfgRx =
bleLLAdvertisingChannelPDUConfig with properties:
PDUType: 'Connection indication'
ChannelSelection: 'Algorithm1'
AdvertiserAddressType: 'Random'
AdvertiserAddress: '0123456789AB'
InitiatorAddressType: 'Random'
InitiatorAddress: '0123456789CD'
AccessAddress: '01234567'
CRCInitialization: '012345'
WindowSize: 1
WindowOffset: 0
ConnectionInterval: 8
SlaveLatency: 0
ConnectionTimeout: 10
UsedChannels: [0 4 12 16 18 24 25]
HopIncrement: 5
SleepClockAccuracy: '251 to 500 ppm'
[1] Веб-сайт технологии Bluetooth. «Веб-сайт Bluetooth Technology | Официальный веб-сайт Bluetooth Technology». Доступно 22 ноября 2019 года. https://www.bluetooth.com/.
[2] Группа специальных интересов Bluetooth (SIG). «Спецификация ядра Bluetooth». Версия 5.1. https://www.bluetooth.com/.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.