Проблема з QPSK модуляції випадкових антиподального сигналу в Matlab

E

ejspins

Guest
Я намагаюся модулювати випадкових антиподального сигналу проби на 4-х символів в секунду, але я не можу написати код прямо в MATLAB. Я використовую команду: modem.qammod створити ручка для мого модулятор, але я постійно отримую повідомлення про помилку:
?? Помилка використання ==> modem.abstractMod.checkModInput на 35 вхідних X повинна бути целочисленной подвійної точності матриці. Помилка в ==> тест в 12 x1 = модулювати (Н, X);
Ось мій код:
Code:
 ясно все, закрити всі; CLC FS = 1000; NTR = 1000; T = 0:1 / (FS-1): 1, X = ((знак (randn (1, NTR)) + я * знак (randn (1, NTR ))).*... ((COS (2 * пі * FS * T )) + (я * гріха (2 * пі * FS * T )))); H = modem.qammod (4); x1 = модулювати (Н, X);%% формуючого фільтра x1shaped = rcosflt (x1, 1, 4, 'ялина / SQRT ", 0,5); розсіювання (x1) розсіювання (x1shaped)
Щось сталося з моїм вхідного сигналу? Чи я не використовую qammod команда правильно?
 
Probs декілька: 1. даючи 4 в якості внеску до qammod, ви більше не anitpodal, ви хочете відправити 2 біт / символ за допомогою 4-точка сузір'я 2. об'єкти 'H' очікує масив цілих чисел у діапазоні від 0 до 3 (як X = randint (1,3,4)), який береться як десятковий еквівалент бінарного картину ви хочете передати, прийнятих на 2bits час. Таким чином, вам не дають це гріх / COS помноженої значення 3. qammode doesn't виробляти синус або COS сигналу, він просто даному сузір'ї точок (смуги значення), до якого ваші дані відображаються в, яке означає, що якщо передається сигнал буде-COS (WT) + гріх (WT), qammod дає вам тільки (-1 + i1) - B
 

Welcome to EDABoard.com

Sponsor

Back
Top