bleWaveformGenerator

Генератор формы волны для BLE PHY

Загрузите Необходимый: Чтобы использовать bleWaveformGenerator, сначала загрузите Библиотеку Communications Toolbox™ для Протокола Bluetooth®. Для получения дополнительной информации смотрите, Получают и Управляют Дополнениями (MATLAB). В качестве альтернативы смотрите Библиотеку Communications Toolbox для Обмена файлами Протокола Bluetooth.

Описание

пример

waveform = bleWaveformGenerator(message) генерирует waveform, физический уровень Bluetooth низкой энергии (BLE) временного интервала (PHY) форма волны при помощи битов информации о входе message.

пример

waveform = bleWaveformGenerator(message,Name,Value) также задает опции с помощью одного или нескольких аргументов пары "имя-значение". Например, 'Mode','LE2M' задает значение режима генерации желаемой формы волны BLE.

Примеры

свернуть все

Создайте вектор-столбец входного сигнала длины 2056 содержащий случайные двоичные значения. Установите уровень символа на значение по умолчанию.

message = randi([0 1],2056,1);
symbolRate = 1e6;

Сгенерируйте форму волны BLE.

waveform = bleWaveformGenerator(message);

Создайте dsp.SpectrumAnalyzer Системный объект, чтобы отобразить спектр частоты сгенерированной формы волны BLE. Установите частоту дискретизации спектра частоты.

scope = dsp.SpectrumAnalyzer;
scope.SampleRate = 8*symbolRate;

Постройте форму волны BLE.

scope(waveform);

Создайте вектор-столбец входного сигнала длины 640 содержащий случайные двоичные значения.

message = randi([0 1],640,1);

Задайте значения генерации режима, индекса канала, выборок на символ и указатель. Установите уровень символа на значение по умолчанию.

phyMode = 'LE125K';
chanIdx = 2;
sps = 4;
accAdd = [1 1 1 1 0 1 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 1 ...
    0 1 0 1 1 0 0].';
symbolRate = 1e6;

Создайте dsp.SpectrumAnalyzer Системный объект, чтобы отобразить спектр частоты сгенерированной формы волны BLE. Установите частоту дискретизации спектра частоты.

scope = dsp.SpectrumAnalyzer;
scope.SampleRate = sps*symbolRate;

Сгенерируйте форму волны BLE с помощью заданных аргументов пары "имя-значение". Постройте форму волны BLE.

waveform = bleWaveformGenerator(message,'Mode',phyMode, ...
    'SamplesPerSymbol',sps,'ChannelIndex',chanIdx,'AccessAddress',accAdd);
scope(waveform);

Входные параметры

свернуть все

Биты входного сигнала, заданные как вектор-столбец с бинарным знаком числовых или логических значений. Это сообщение содержит данные о контроле циклическим избыточным кодом (CRC) и модуль данных о протоколе (PDU). Максимальная продолжительность этого значения составляет 2 080 битов.

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: bleWaveformGenerator(message,'Mode','LE2M','ChannelIndex',36)

Режим Generating, заданный как разделенная запятой пара, состоящая из 'Mode' и 'LE1M', 'LE2M', 'LE500K', или 'LE125K'. Это значение указывает на тип формы волны BLE.

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

Индекс канала, заданный как разделенная запятой пара, состоящая из 'ChannelIndex'и целое число в области значений [0, 39]. Для каналов данных это значение должно быть в области значений [0, 36]. Для рекламы каналов это значение должно быть в области значений [37, 39]. Это значение используется белящим данные блоком, чтобы рандомизировать биты.

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

Выборки на символ, заданный как разделенная запятой пара, состоящая из 'SamplesPerSymbol' и положительное целое число. Это значение используется в модуляции Гауссова манипулирования сдвига частоты (GFSK).

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

Указатель, заданный как разделенная запятой пара, состоящая из 'AccessAddress' и 32-битный вектор-столбец числовых или логических значений.

Типы данных: логический | single | double | int

Выходные аргументы

свернуть все

Выведите форму волны временного интервала, возвращенную как вектор-столбец с комплексным знаком размера Ns-by-1, где Ns представляет количество выборок временного интервала. waveform сгенерирован в форме комплексных выборок синфазной квадратуры (IQ).

Ссылки

[1] Домашняя страница Bluetooth. https://www.bluetooth.com/.

[2] Специальная группа (SIG) Bluetooth. "Спецификация ядра Bluetooth". Версия 5.0.

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

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

Смотрите также

Функции

Приложения

Введенный в R2019b