Объект Configuration для BLE LL, рекламируя PDU канала
Загрузите Необходимый: Чтобы использовать bleLLAdvertisingChannelPDUConfig, сначала загрузите Библиотеку Communications Toolbox™ для Протокола Bluetooth®. Для получения дополнительной информации смотрите, Получают и Управляют Дополнениями (MATLAB). В качестве альтернативы смотрите Библиотеку Communications Toolbox для Обмена файлами Протокола Bluetooth.
bleLLAdvertisingChannelPDUConfig
создает объект настройки для слоя ссылки (LL) Bluetooth низкой энергии (BLE), рекламируя модуль данных о протоколе (PDU) канала с помощью значений по умолчанию и заданных значений. Можно сконфигурировать BLE LL, рекламируя PDU канала с помощью применимых свойств bleLLAdvertisingChannelPDUConfig
.
создает объект настройки, cfgLLAdv
= bleLLAdvertisingChannelPDUConfigcfgLLAdv
, для BLE LL, рекламируя PDU канала со значениями по умолчанию.
создает BLE LL, рекламируя объект настройки PDU канала путем определения свойств с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Например, cfgLLAdv
= bleLLAdvertisingChannelPDUConfig(Name,Value
)bleLLAdvertisingChannelPDUConfig('PDUType','Scan response')
конфигурирует cfgLLAdv
с типом BLE LL, рекламируя PDU канала как 'Scan response'
.
Для получения дополнительной информации о BLE LL, рекламируя свойства PDU канала и их соответствующие значения, смотрите объем 6, часть B, разделите 2.3 из Спецификации [2] Ядра Bluetooth.
PDUType
— BLE LL рекламируя тип PDU канала'Advertising indication'
(значение по умолчанию) | 'Advertising direct indication'
| 'Advertising non connectable indication'
| ...
BLE LL рекламируя PDU канала вводит в виде вектора символов или строкового скаляра, чтобы описать тип BLE LL, рекламируя PDU канала. Можно задать '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
— Рекламные данные
(значение по умолчанию) | вектор символов | строковый скаляр | числовой вектор элементов в области значений [0,31] | n
- 2 символьных массиваРекламные данные в виде одного из этих значений:
Вектор символов — Этот вектор представляет октеты в шестнадцатеричном формате.
Строковый скаляр — Этот скаляр представляет октеты в шестнадцатеричном формате.
Числовой вектор элементов в области значений [0,31] — Этот вектор представляет октеты в десятичном формате.
n
- 2 символьных массива — Каждая строка представляют октет в шестнадцатеричном формате.
Это свойство указывает на рекламные данные, которые устройство отсылает в пакете рекламы.
Типы данных: char |
string
| double
ScanResponseData
— Отсканируйте данные об ответе
(значение по умолчанию) | вектор символов | строковый скаляр | числовой вектор элементов в области значений [0,31] | n
- 2 символьных массиваОтсканируйте данные об ответе в виде одного из этих значений:
Вектор символов — Этот вектор представляет октеты в шестнадцатеричном формате.
Строковый скаляр — Этот скаляр представляет октеты в шестнадцатеричном формате.
Числовой вектор элементов в области значений [0,31] — Этот вектор представляет октеты в десятичном формате.
n
- 2 символьных массива — Каждая строка представляют октет в шестнадцатеричном формате.
Это свойство указывает на данные об ответе сканирования, которые устройство отсылает в пакете ответа сканирования (когда запрос сканирования получен).
Типы данных: char |
string
| double
AccessAddress
— Уникальный адрес связи
(значение по умолчанию) | вектор символов с восемью элементами или строковый скалярУникальный адрес связи в виде вектора символов с восемью элементами или строкового скаляра. Это свойство указывает на уникальный 32-битный адрес, сгенерированный LL для новой связи или для периодической рекламы между двумя устройствами.
Типы данных: char |
string
CRCInitialization
— Значение инициализации CRC
(значение по умолчанию) | вектор символов с шестью элементами | шестнадцатеричное значение с тремя октетамиЗначение инициализации CRC в виде вектора символов с шестью элементами или строкового скаляра, обозначающего шестнадцатеричное значение с тремя октетами. Это свойство используется в качестве значения инициализации для вычисления CRC.
Типы данных: char |
string
WindowSize
— Передайте размер окна
(значение по умолчанию) | неотрицательное целое числоПередайте размер окна в виде неотрицательного целого числа в области значений [1, Mws], где Mws является меньшими из 8 и ConnectionInterval
- 1. Это свойство указывает на размер окна, в котором ведущее устройство передает пакет данных, и ведомое устройство прислушивается к пакету данных после установления связи. Каждый модуль взят в качестве 1,25 мс так, чтобы размер окна (WindowSize
×1.25), находится в области значений 1,25 мс к минимуму (10 мс, ((ConnectionInterval
×1.25) - 1.25) мс).
Типы данных: double
WindowOffset
— Передайте смещение окна
(значение по умолчанию) | неотрицательное целое числоПередайте смещение окна в виде неотрицательного целого числа в области значений [0, Mwo], где Mwo является меньшими из 3 200 и 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, Ракета], где Ракета является меньшими из 499 и ((ConnectionInterval
×10) / ((ConnectionInterval
×1.25) ×2))-1. Это свойство указывает на количество событий связи, что ведомое устройство может пропустить прислушивание к пакетам от ведущего устройства.
Типы данных: double
ConnectionTimeout
— Тайм-аут контроля связью
(значение по умолчанию) | положительное целое числоТайм-аут контроля связью в виде положительного целого числа в области значений [Макт, 3200], где Макт является большими из 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, 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'
использование пар "имя-значение".
Создайте BLE LL, рекламируя объект настройки PDU канала, '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]
Создайте другой BLE LL, рекламируя объект настройки PDU канала, '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'
Этот пример использует:
Создайте BLE LL, рекламируя объект настройки PDU канала, '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'
Сгенерируйте BLE LL, рекламируя PDU канала при помощи соответствующего объекта настройки.
pdu = bleLLAdvertisingChannelPDU(cfgTx);
Декодируйте сгенерированный BLE LL, рекламируя PDU канала. Возвращенное состояние указывает, что декодирование успешно. Просмотрите выход '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 | официальный сайт Технологии Bluetooth”. Полученный доступ 22 ноября 2019. https://www.bluetooth.com/.
[2] Специальная группа (SIG) Bluetooth. "Спецификация Ядра Bluetooth". Версия 5.1. https://www.bluetooth.com/.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.