I'm using 2020 version but, I don't know how to change code from 2015 version

4 views (last 30 days)
2 lines codes are 2015 version
hmodem = modem.qammod(0:M-1, M, 'bin', 'UnitAveragePower', true)
all_sym = modulate(hmodem,binary);
some staffs adviced me but, these weren't useful and helpful so, i want to know detail to change methods in 2020 version from 2015 version.
please tell me about 2lines
  2 Comments
Rik
Rik on 10 Oct 2020
Generally when a function is removed both the documentation and the release notes will contain advice about alternatives. Where did you search?
Choi
Choi on 10 Oct 2020
Sorry sir, I was mistake upload my codes
original code is hmodem = modem.qammod('M',M, 'SymbolOrder', 'Gray','InputType', 'bit')
and all_sym = modulate(hmodem,binary);
i want to change in 2020version

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 10 Oct 2020
Edited: Walter Roberson on 10 Oct 2020
The R2020a version of that code is:
error('comm:modem:InvalidUsage', 'Invalid usage. Type ''help modem.qammod'' to see correct usage.')
Details:
The first parameter to modem.qammod can never be a vector: it must be either a scalar (M) or else an existing modem.qammod object, or else a character vector that is part of a name / value pair.
The second parameter to modem.qammod can only be numeric if the first parameter was a numeric scalar (in which case the second parameter can be the phase offset) -- or if the first parameter was a character vector such as 'M'
The 'bin' option can only occur if it is part of a name/value pair and the proceeding option name is 'SymbolOrder'
The option 'UnitAveragePower', true was valid in R2015a -- and is also valid in the current qammod() call.
all_sym = modulate(hmodem,binary);
You can only pass binary to modulate if the modem.qammod object was created with M = 2, or if it was created with 'InputType', 'bit' . Otherwise you need to pass integers to modulate()
For the reasons described above, it is not possible for the call you gave to work, so the R2020a version of the code would have to be to issue the same error message as would have been given in R2015.
  13 Comments
Pavankalyan D S
Pavankalyan D S on 8 Aug 2021
hmodem = modem.qammod('M',M, 'SymbolOrder', 'Gray','InputType', 'bit');
hdemodem = modem.qamdemod('M', M,'SymbolOrder','Gray','OutputType','bit');
I change them to qammod, again getting error
Pavankalyan D S
Pavankalyan D S on 8 Aug 2021
the error:
Error in qammod (line 93)
plotConstellation, outputDataType] = validateInputArgs(M, varargin{:});

Sign in to comment.

More Answers (0)

Products


Release

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!