⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ytgood.m

📁 对QAM的频谱、散图、眼图以及误码率进行了仿真。使用matlab语言。
💻 M
字号:
M=16;Fd=1;Fs=10;
Pd=100;SNR=14;numPlot=20;
msg_d=randint(Pd,1,M);   %生成随机信号
X=fft(msg_d);
subplot(2,2,1),stem(1:100,X,'.');ylabel('输入信号频谱');axis([1 100 -100 100]);
subplot(2,2,2),stem(0:numPlot-1, msg_d(1:numPlot), 'bx');
xlabel('Time'); ylabel('Input Amplitude');
msg_a=modmap(msg_d,Fd,Fs,'qam',M);%采用QAM调制方式
delay=3;    %提升余弦滤波器的延时
rcv=rcosflt(msg_a,Fd,Fs,'fir/normal',.5,delay);  %利用升余弦滤波器对信号滤波
propdelay=delay.*Fs/Fd+1;  %繁殖延时
rcv1=rcv(propdelay:end-(propdelay-1),:);
N=Fs/Fd;
offset1=0;   %无偏移
rcv_a=rcv(3*N+1:end-4*N,:);
grayencod = bitxor(0:M-1, floor((0:M-1)/2));
msg_gr_orig = grayencod(msg_d+1);
msg_tx = modulate(modem.qammod(M), msg_gr_orig);
msg_tx = rectpulse(msg_tx,Fs);
randn('state', 54321);
msg_rx = awgn(msg_tx, SNR, 'measured', [], 'dB');
msg_rx_down = intdump(msg_rx,Fs);
msg_gr_demod = demodulate(modem.qamdemod(M), msg_rx_down);
[dummy graydecod] = sort(grayencod); graydecod = graydecod - 1;
msg_demod = graydecod(msg_gr_demod+1)';
Y=fft(msg_demod);
subplot(2,2,3),stem(1:100,Y,'.');ylabel('输出信号频谱');axis([1 100 -100 100]);
subplot(2,2,4),stem(0:numPlot-1, msg_demod(1:numPlot), 'bx');
xlabel('Time'); ylabel('Output Amplitude');
h=eyediagram(rcv1,N,1/Fd,offset1);   %绘制眼图
h1=scatterplot(rcv_a,N,0,'bx');   %绘制散射图
h2 = scatterplot(msg_rx);          %绘制经AWGN信道后的散射图
[errorBit ratioBit] = biterr(msg_d, msg_demod, log2(M));
[errorSym ratioSym] = symerr(msg_d, msg_demod);




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -