Communications Toolbox | ![]() ![]() |
Modulating the Signal
This part of the example modulates the data in the column vector signal
in two different ways. The dmodce
function performs both modulations and puts the results into the two-column matrix modsignal
.
The first call to dmodce
, which creates the first column of modsignal
, tells dmodce
to use QASK modulation on M
symbols. The string 'qask'
indicates the QASK method as well as the default square constellation configuration. In this case, the configuration implements Gray code.
The second call to dmodce
, which creates the second column of modsignal
, tells dmodce
to use QASK modulation with a signal constellation whose configuration is represented in the vectors inphase
and quadr
. The variables inphase
and quadr
are length-M
vectors that list the in-phase and quadrature components, respectively, of the points in the signal constellation. The points are listed in sequence, to associate a message symbol of k with the (k+1)st elements in inphase
and quadr
. Whereas Gray code labels the constellation points in a special way, this configuration lists points in a sequence that is merely convenient for creating inphase
and quadr
.
These lines also illustrate some common ways to manipulate matrices in MATLAB. If you are not familiar with the colon notation in MATLAB or with functions like ones
and zeros
, then you should consult the MATLAB documentation set.
% Use M-ary QASK modulation with two different labeled % square constellations. modsignal(:,1) =dmodce
(signal,Fd,Fs,'qask',M); inphase = [-3:2:3 -3:2:3]; quadr = [ones(1,4), -1*ones(1,4)]; modsignal(:,2) =dmodce
(signal,Fd,Fs,'qask/arb',inphase,quadr);
![]() | Creating the Signal | Adding Noise | ![]() |