| Contents | Index |
h = modem.qammod(M)
h = modem.qammod(M, phaseoffset)
h = modem.qammod(property1, value1,
...)
h = modem.qammod(QAMdemod_object)
h = modem.qammod(QAMdemod_object, property1,
value1, ...)
h = modem.qammod
The modem.qammod function creates a modulator object that you can use with the modulate method to modulate a signal. To learn more about the process for modulating a signal, see Using Modem Objects.
h = modem.qammod(M) constructs a QAM modulator object h for M-ary modulation.
h = modem.qammod(M, phaseoffset) constructs a QAM modulator object h whose constellation has a phase offset of phaseoffset radians.
h = modem.qammod(property1, value1, ...) constructs a QAM modulator object h with properties as specified by the property/value pairs. See the following section on properties.
h = modem.qammod(QAMdemod_object) constructs a QAM modulator object h by reading the property values from the QAM demodulator object, QAMdemod_object. The properties that are unique to the QAM modulator object are set to default values.
h = modem.qammod(QAMdemod_object, property1, value1, ...) constructs a QAM modulator object h by reading the property values from the QAM demodulator object, QAMdemod_object. Additional properties are specified using property/value pairs.
h = modem.qammod constructs a QAM modulator object h with default properties. It constructs a modulator object for 16-QAM modulation and is equivalent to:
h = modem.qammod('M', 16, 'PhaseOffset', 0, 'SymbolOrder',...
'binary', 'InputType', 'integer')This object has a method modulate that is used to modulate signals.
The syntax is y = modulate(h, x), where h is the handle to a modulator object and x is a signal. This syntax outputs the baseband signal (complex envelope) y.
x can be a multichannel signal. The columns of x are considered individual channels, while the rows are time steps.
When mapping input bits to symbols, the first bit is interpreted as the most significant bit.
For h.inputtype = ‘bit' (i.e., x represents
binary input), nBits consecutive elements in
each channel or column represent a symbol, where nBits =
log2(h.M). The number of
elements in each channel must be an integer multiple of nBits,
and elements of x must be 0 or 1. For an input x of
size
, an output y of
size
is computed.
For h.inputtype = ‘integer' (i.e., x represents
symbol input), elements of x must be in the range
[0, h.M-1]. For an input x of
size
, an output y of
size
is computed.
See Using Modem Objects for usage examples.
The following table describes the properties of the QAM modulator object.
| Property | Description |
|---|---|
| Type | Type of modulation object. This property is a fixed value, set to 'QAM Modulator'. |
| M | M-ary value. Default is 16. |
| PhaseOffset | Phase offset of ideal signal constellation in radians. Default is 0. |
| Constellation | Ideal signal constellation. This property is not writable and is automatically computed based on the M and PhaseOffset properties. |
| SymbolOrder | Type of mapping employed for mapping symbols to ideal constellation points. The choices are 'binary' (binary mapping), 'gray' (Gray mapping), and 'user-defined' (custom mapping). Default is 'binary'. |
| SymbolMapping | Symbol mapping values corresponding to ideal constellation points. This property is writable only when SymbolOrder is set to 'user-defined'. Each element of the symbol mapping vector contains the symbol mapped to the corresponding element of the constellation vector. The first element of this vector corresponds to the top-leftmost point of the constellation, with subsequent elements running down column-wise, from left to right. The last element corresponds to the bottom-rightmost point. Note that when the alphabet size is 4, this top-down mapping in binary mode effectively creates a gray-mapped constellation. |
| InputType | Type of input to be processed by the QAM modulator object. The choices are 'bit' (bit/binary output), and 'integer' (integer/symbol output). Default is 'integer'. |
A QAM modulator object has the following functions for inspection, management, and simulation:
See Using Modem Objects for details and examples of their use.
% Construct a modulator object for 32-QAM modulation. h = modem.qammod(32) % Construct an object to modulate binary data using 64-QAM % modulation. The constellation has Gray mapping. h = modem.qammod('M', 64, 'SymbolOrder', 'Gray', ... 'InputType', 'Bit') % Construct a modulator object from an existing demodulator % object for QAM demodulation in order to modulate binary % inputs. demodObj = modem.qamdemod('M', 8) modObj = modem.qammod(demodObj, 'InputType', 'Bit')
modem | modem.dpskdemod | modem.dpskmod | modem.genqamdemod | modem.genqammod | modem.mskdemod | modem.mskmod | modem.oqpskdemod | modem.oqpskmod | modem.pamdemod | modem.pammod | modem.pskdemod | modem.pskmod | modem.qamdemod

Learn how to apply early verification to your development process through these technical resources.
How much time do you spend on testing to ensure implementation meets system-level requirements?
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |