生成16 QAM信号

时间:2015-05-22 18:26:46

标签: matlab signal-processing software-defined-radio

我知道使用以下

生成QPSK信号的方法
TxS=round(rand(1,N))*2-1;  % QPSK symbols are transmitted symbols
TxS=TxS+sqrt(-1)*(round(rand(1,N))*2-1);

在上面,符号是2个字母+ 1 / -1。 但我无法理解如何为相同的字母空间生成16-正交幅度调制信号?可能吗?或者通常的生成方式是什么?

此外,使用复杂信号并不是真的是一种做法吗?

2 个答案:

答案 0 :(得分:5)

看看这个: http://www.mathworks.com/help/comm/ref/comm.rectangularqamdemodulator-class.html

hMod = comm.RectangularQAMModulator('ModulationOrder',16);
dataIn = randi([0 15],10000,1);
txSig = step(hMod,dataIn);

您也可以使用:

TxS = (randi(4,N,1)*2-5)+i*(randi(4,N,1)*2-5)

答案 1 :(得分:1)

是的,通常使用复数(代表I / Q(同相/正交)平面)而不是实数。这是因为在软件定义的无线电中,您通常会考虑复杂的基带。

当然,您不能代表16个点,每个点只有两个维度和两个值。您可能想要阅读数字通信理论。