This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.


Offset quadrature phase shift keying demodulation


  • z = oqpskdemod(y)
  • z = oqpskdemod(y,ini_phase)



z = oqpskdemod(y) demodulates the complex envelope of an OQPSK modulated signal. The function upsamples by a factor of 2, because OQPSK does not permit an odd number of samples per symbol.

z = oqpskdemod(y,ini_phase) specifies the initial phase of the modulated signal.


collapse all

Generate random 4-ary data.

dataIn = randi([0 3],100,1);

OQPSK modulate the data, and pass it through an AWGN channel.

txSig = oqpskmod(dataIn);
rxSig = awgn(txSig,10);

OQPSK demodulate the received signal. Determine the number of symbol errors.

dataOut = oqpskdemod(rxSig);
numErrs = symerr(dataIn,dataOut)
numErrs =


Input Arguments

collapse all

OQPSK-modulated input signal, specified as a complex vector or matrix. If y is a matrix, the function processes the columns independently.

Data Types: single | double
Complex Number Support: Yes

Initial phase of the OQPSK modulation, specified in radians as a real scalar.

Example: pi/4

Data Types: double | single

Output Arguments

collapse all

OQPSK-demodulated output signal, returned as a vector or matrix having the same number of columns as input signal y.

Data Types: double | single

Introduced before R2006a

Was this topic helpful?