Phase Noise on QPSK Signal
1 回表示 (過去 30 日間)
古いコメントを表示
I am working with MATLAB R2016a. When I attempt to execute the below code I get the following error:
Array formation and parentheses-style indexing with objects of class
'comm.QPSKModulator' is not allowed. Use objects of class
'comm.QPSKModulator' only as scalars or use a cell array.
Error in qpskemv (line 23)
x = qpskModulator(d);
CODE:
qpskModulator = comm.QPSKModulator;
phNoise = comm.PhaseNoise('Level',-55,'FrequencyOffset',20,'SampleRate',1000);
d = randi([0 3],1000,1);
x = qpskModulator(d);
y = phNoise(x);
There is a note stating of course: "Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operation"
Can anyone tell me how to use this step to correct the above code?
0 件のコメント
採用された回答
Chandresh Vora
2019 年 6 月 17 日
As the note suggests, y = obj(x) is equivalent to y = step(obj,x) starting R2016b. In R2016a, y = step(obj,x) is the correct syntax. Replace these two lines -
x = qpskModulator(d);
y = phNoise(x);
with -
x = step(qpskModulator,d);
y = step(phNoise,x);
Thanks,
Chandresh
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Transmitters and Receivers についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!