%程序名称:QAM.m
%程序功能:调用函数qammod,qamdemod实现QAM调制与解调
%程序作者:张平凡
%最后修改时间:2016-12-30
%=====================
N=100000;%定义基本参数
M=4;
fs=1000;
x=randint(1,N,M);
y=qammod(x,M)
z=qamdemod(y,M);
y1=awgn(y,20);z1=qamdemod(y1,M);%yl=awgn(y,SNR-10*log10(0.5)-10*log10(N),'measured',[],'dB');
y2=awgn(y,-20);z2=qamdemod(y2,M);
%画实域频域频谱
xw=fft(x,100000);
mag_xw=abs(xw);
zw=fft(z,100000);
mag_zw=abs(zw);
z1w=fft(z1,100000);
mag_z1w=abs(z1w);
z2w=fft(z2,100000);
mag_z2w=abs(z2w);
fs=1000;N=100000;
n=0:N-1;
f=n*fs/N;
SNR = 13; % 添加13dB信噪比
y3 = awgn(y,SNR);
z3 = qamemod(y3,M);
%叠加噪声和误码分析
% SNR=-10:10
% for i=1:length(SNR);
% y3=awgn(y,SNR(i)); %加入高斯小噪声,信噪比从-10dB到10dB
% z3=qamdemod(y3,M);%调用数字带通解调函数ddemod对加噪声信号进行解调
% [br, Pe(i)]=symerr(x,z3)%对解调后加大噪声信号误码分析,br为符号误差数,Pe(i)为符号误差率
% end
% figure(1)
% stairs(x);title('四进制基带信号');xlabel('时间 t');ylabel('序列值');axis([1 20 -1 5]);grid on
% figure(2)
% subplot(211);stairs(real(y));title('QAM信号实部');axis([1 20 -3 3]);grid on
% subplot(212);stairs(imag(y));title('QAM信号虚部');axis([1 20 -3 3]);grid on
% figure(3);
% stairs(z);title('QAM解调后四进制基带信号');xlabel('时间 t');ylabel('序列值');axis([1 20 -1 5]);grid on
% figure(4);
% subplot(3,1,1);stairs(x);title('四进制基带信号');xlabel('时间 t');ylabel('序列值');axis([1 20 -1 4]);grid on
% subplot(3,1,2);stairs(z1);title('大信噪比解调恢复四进制基带信号');xlabel('时间 t');ylabel('序列值');axis([1 20 -1 4]);grid on
% subplot(3,1,3);stairs(z2);title('小信噪比解调恢复四进制基带信号');xlabel('时间 t');ylabel('序列值');axis([1 20 -1 4]);grid on
% figure(5);
% subplot(211);plot(f,mag_xw);title('四进制基带信号频谱');xlabel('频率 f');ylabel('幅度值');axis([0 1 0 4500]);grid on
% subplot(212);plot(f,mag_zw);title('无噪声下QAM解调后四进制基带信号频谱');xlabel('频率 f');ylabel('幅度值');axis([0 1 0 4500]);grid on
% figure(6)
% subplot(211);plot(f,mag_z1w);title('大信噪比QAM解调恢复四进制基带信号频谱');xlabel('频率 f');ylabel('幅度值');axis([0 1 0 4500]);grid on
% subplot(212);plot(f,mag_z2w);title('小信噪比QAM解调恢复四进制基带信号频谱');xlabel('频率 f');ylabel('幅度值');axis([0 1 0 4500]);grid on
% figure(7)
% semilogy(SNR,Pe); % 调用semilogy函数绘制信噪比与误码率的关系曲线
% xlabel('信噪比 SNR(r/dB)');
% ylabel('误码率 Pe');
% title('信噪比与误码率的关系');
% axis([-10 10 0 1])
% grid on
% scatterplot(y)%理想调制输出
% scatterplot(y1)%大信噪比调制输出
% scatterplot(y2)%小信噪比调制输出
2020年西安电子科技大学B测源代码.zip
需积分: 50 6 浏览量
2020-06-26
15:23:37
上传
评论 18
收藏 3KB ZIP 举报
沉迷单车的追风少年
- 粉丝: 2w+
- 资源: 49
最新资源
- 19ec93431a5b148599c01eda2a0de94f
- 一个简单的Python计算器程序 这个程序将使用基本的Python语法和功能,实现加、减、乘、除四种基本运算
- 三菱PLC例程源码FX与日立SJ300变频通讯,有注解
- Ai智能写作文章助手一键生成原创文章文案,支持安卓,PC,小程序
- 三菱PLC例程源码FX和EMERSON通讯案例FxModbustest
- 三菱PLC例程源码FX和EMERSONModbus通讯案例
- 推荐GitKraken - 超好用的 Git 可视化工具
- 一个简单的Python计算器程序案例,目的是用Python最简单的写法让大家明白Python的语法怎么用
- 三菱PLC例程源码FX防洪闸门控制程序
- pyecharts操作3.ipynb
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈