exponenta event banner

pamdemod

Амплитудно-импульсная демодуляция

Синтаксис

z = pamdemod(y,M)
z = pamdemod(y,M,ini_phase)
z = pamdemod(y,M,ini_phase,symbol_order)

Описание

z = pamdemod(y,M) демодулирует комплексную огибающую y импульсно-амплитудно-модулированного сигнала. M - размер алфавита. Идеальный модулированный сигнал должен иметь минимальное евклидово расстояние 2.

z = pamdemod(y,M,ini_phase) определяет начальную фазу модулированного сигнала в радианах.

z = pamdemod(y,M,ini_phase,symbol_order) указывает, как функция присваивает двоичные слова соответствующим целым числам. Если symbol_order имеет значение 'bin' (по умолчанию) функция использует естественный двоично-кодированный порядок. Если symbol_order имеет значение 'gray', он использует порядок, закодированный Греем.

Примеры

свернуть все

Модулировать и демодулировать случайные целые числа с помощью амплитудно-импульсной модуляции. Убедитесь, что выходные данные соответствуют исходным данным.

Установите порядок модуляции и создайте 100 M-образных символов данных.

M = 12;
dataIn = randi([0 M-1],100,1);

Выполните операции модуляции и демодуляции.

modData = pammod(dataIn,M);
dataOut = pamdemod(modData,M);

Сравните первые пять символов.

[dataIn(1:5) dataOut(1:5)]
ans = 5×2

     9     9
    10    10
     1     1
    10    10
     7     7

Убедитесь в отсутствии ошибок символов во всей последовательности.

symErrors = symerr(dataIn,dataOut)
symErrors = 0

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.
Представлен до R2006a