exponenta event banner

bleChannelSelection

Индекс канала BLE для подключения, периодической рекламы и изохронных событий

Требуется загрузка: Для использования bleStartSelection сначала загрузите библиотеку Communications Toolbox™ Library для протокола Bluetooth ®. Дополнительные сведения см. в разделе Получение надстроек и управление ими. Кроме того, см. библиотеку Communications Toolbox Library для обмена файлами по протоколу Bluetooth.

Описание

bleChannelSelection Система object™ выбирает индекс канала низкой энергии Bluetooth (BLE) на основе алгоритма, заданного свойством Algorithm.

Для выбора индекса канала BLE:

  1. Создать bleChannelSelection и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

пример

csa = bleChannelSelection создает системный объект выбора канала BLE по умолчанию.

csa = bleChannelSelection(Name,Value)Задает свойства, используя одну или несколько пар имя-значение. Заключите каждое имя свойства в кавычки. Например, bleChannelSelection('Algorithm',2) задает индекс канала BLE на основе алгоритма 2.

Свойства

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

Примечание

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

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

Тип алгоритма выбора канала BLE, указанный как 1 или 2 представляют алгоритм 1 или алгоритм 2 соответственно. Алгоритм 1 выбирает индекс канала для событий соединения. Алгоритм 2 выбирает индекс канала для событий соединения, периодических рекламных событий и изохронных событий LE.

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

Число приращения прыжков, указанное как целое число в диапазоне [5, 16]. Это свойство указывает число шагов перехода между каналами данных. Если для свойства Algorithm задано значение 1объект System использует это свойство в качестве входного аргумента.

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

Уникальный адрес соединения, заданный как восьмиэлементный символьный вектор или строковый скаляр, обозначающий шестнадцатеричное значение из четырех октетов. Это значение определяет уникальный 32-разрядный адрес для соединения канального уровня между двумя устройствами. Если для свойства Algorithm задано значение 2объект System использует это свойство в качестве входного аргумента.

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

Список используемых (хороших) каналов данных, указанных как вектор целых чисел в диапазоне [0, 36]. Длина вектора должна быть больше 1. По крайней мере два канала должны быть установлены в качестве используемых (хороших) каналов. Это свойство определяет набор хороших каналов, классифицированных ведущим.

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

Флаг для включения или отключения выбора изохронного канала событий, указанный как 0 (false) или 1 (true). Значение 1 (true) выбирает канал для изохронных событий с помощью алгоритма 2.

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

Счетчик изохронных событий, заданный как целое число в диапазоне [0, 65535]. Это свойство задает счетчик для каждого изохронного события.

Зависимости

Чтобы включить это свойство, установите для свойства SubeventStartSelection значение 1 (true).

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

Счетчик подчиненных событий, заданный как целое число в диапазоне [1, 31]. Это свойство задает счетчик для каждого подсвечения.

Зависимости

Чтобы включить это свойство, установите для свойства SubeventStartSelection значение 1 (true).

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

Это свойство доступно только для чтения.

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

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

Это свойство доступно только для чтения.

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

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

Использование

Синтаксис

Описание

пример

channelIndex = csa выбирает индекс канала на основе применимых свойств. Во время каждого вызова этой функции обновите значения свойств IsochronousEventCounter и SubeventNumber. Во время каждого вызова этой функции объект System должен обновить SubeventNumber свойство последовательно.

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

Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:

release(obj)

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

cloneСоздать повторяющийся объект System
isLockedОпределить, используется ли объект System
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Создайте системный объект выбора канала BLE для выбора индекса канала BLE на основе алгоритма выбора канала 1.

csa = bleChannelSelection
csa = 
  bleChannelSelection with properties:

       Algorithm: 1
    HopIncrement: 5
    UsedChannels: [1x37 double]
    ChannelIndex: 0
    EventCounter: 0

Установите число шагов перехода, равное 7. Затем укажите набор используемых (хороших) каналов, классифицированных мастером, и отобразите свойства объекта.

csa.HopIncrement = 7;
csa.UsedChannels = [0 2 24 6 10 14 26 30 34 36]
csa = 
  bleChannelSelection with properties:

       Algorithm: 1
    HopIncrement: 7
    UsedChannels: [0 2 6 10 14 24 26 30 34 36]
    ChannelIndex: 0
    EventCounter: 0

Выберите индекс канала BLE из соответствующего системного объекта с помощью алгоритма 1 (алгоритм по умолчанию).

channelIndex = csa()
channelIndex = 30

Создайте другой системный объект выбора канала BLE для выбора индекса канала BLE, на этот раз путем указания типа выбора канала Алгоритм 2.

csa2 = bleChannelSelection('Algorithm',2);

Задайте уникальный адрес подключения. Затем укажите набор используемых (хороших) каналов, классифицированных мастером, и отобразите свойства объекта.

csa2.AccessAddress = '8E89BED6';
csa2.UsedChannels = [9 10 21 22 23 33 34 35 36]
csa2 = 
  bleChannelSelection with properties:

                   Algorithm: 2
               AccessAddress: '8E89BED6'
    SubeventChannelSelection: 0
                UsedChannels: [9 10 21 22 23 33 34 35 36]
                ChannelIndex: 0
                EventCounter: 0

Выберите индекс канала BLE из соответствующего объекта System с помощью алгоритма 2.

channelIndex2 = csa2()
channelIndex2 = 35

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

csa = bleChannelSelection
csa = 
  bleChannelSelection with properties:

       Algorithm: 1
    HopIncrement: 5
    UsedChannels: [1x37 double]
    ChannelIndex: 0
    EventCounter: 0

Установите алгоритм выбора канала BLE в 2. Этот алгоритм поддерживает выбор канала для событий соединения, периодических рекламных событий и изохронных событий LE. Активизируйте выбор подчиненного канала.

csa.Algorithm = 2;
csa.SubeventChannelSelection = true;

Укажите уникальный адрес соединения и набор используемых (хороших) каналов, классифицированных ведущим устройством.

csa.AccessAddress = '8E89BED6';
csa.UsedChannels  = [9 10 21 22 23 33 34 35 36];

В первом изохронном событии выберите индекс канала для первого подчиненного события.

csa.IsochronousEventCounter = 0;
csa.SubeventNumber = 1;
channelIndex = csa()
channelIndex = 35

В первом изохронном событии выберите индекс канала для второго подчиненного события.

csa.SubeventNumber = 2;
channelIndex = csa()
channelIndex = 10

Ссылки

[1] Веб-сайт технологии Bluetooth. «Веб-сайт Bluetooth Technology | Официальный веб-сайт Bluetooth Technology». Доступно 22 ноября 2019 года. https://www.bluetooth.com/.

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

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

.
Представлен в R2019b