A problem with my digital communication code
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
DM
el 19 de Oct. de 2014
Comentada: Rick Rosson
el 19 de Oct. de 2014
I have a problem in writing in MATLAB a program that modulates data bits, adds noise, then demodulates it and calculates the bit error and the symbol error rate. The modulation used first should be QPSK. I have done the following:
N=100;
databits = randi([0 3],N,1);
hModulator = comm.QPSKModulator;
hModulator.PhaseOffset = pi/4;
txsig = step(hModulator, databits);
scatterplot(txsig)
grid on
SNRdB=-10
rxsig = awgn(txsig,SNRdB);
H = comm.QPSKDemodulator
hH.PhaseOffset = pi/4;
symdecoded=step(H,rxsig)
symerr(symdecoded,databits)
biterr(symdecoded, databits)
My first question is I don't think I am doing the bit error rate and symbol error rate correctly, can someone help me spot where the problem is? Where am I missing out?
I am then asked to repeat the same problem but make the changes needed to make it work with 16-QAM and 64-QAM by changing a parameter called CONSTELLATION.
I have tried using demod() and ddemodce() but these two functions have been removed from MATLAB? Does anyone know how to proceed?
0 comentarios
Respuesta aceptada
Rick Rosson
el 19 de Oct. de 2014
Editada: Rick Rosson
el 19 de Oct. de 2014
2 comentarios
Rick Rosson
el 19 de Oct. de 2014
Please try:
[ ~, SER ] = symerr(symdecoded,databits)
[ ~, BER ] = biterr(symdecoded, databits)
Más respuestas (1)
Ver también
Categorías
Más información sobre Waveform Generation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!