前言
Matlab模拟2ask信号调制解调,传码率1K载波频率为10的波特KHZ,画时域频谱图。这是我们的实验课作业。我们从网上复制代码,改变要求。很少有人说我们在网上符合要求。我从未学过matlab和python画画等,勉强做出来。如有疏漏不当,请不吝赐教! 以下是代码:
clear all; close all; clc; M=10; %产生码元数 L=100; %每码元复制L次 Ts=0.001; %每个码元的宽度,即码元的持续时间 Rb=1/Ts; %码元速率1K dt=Ts/L; %采样间隔 TotalT=M*Ts; %总时间 t=0:dt:TotalT-dt; %时间 %产生单极性波形 wave=randi([0,1],1,M); %产生二进制随机码,M为码元个数 fz=ones(1,L); %定义复制次数L,L为每码元采样点数 x1=wave(fz,:); %复制的第1行复制L次 dnrz=reshape(x1,1,L*M); %单极性不归零矩形脉冲波形 fc=10000; %载波频率10K zb=sin(2*pi*fc*t); ask2=dnrz.*zb; %2ASK的模拟调制 subplot(611) plot(t,dnrz) title(单极性不归零矩形脉冲) axis([0,TotalT,-0.1,1.1]) subplot(612) plot(t,ask2); title('2ASK已调信号波形') axis([0,TotalT,-1.1,1.1]); %已调信号通过含有高斯白噪声的信道 tz=awgn(ask2,15); %信号ask2中加入白噪声,信噪比为SNR=15dB subplot(613); plot(t,tz); axis([0,TotalT,-1.5,1.5]); title('通过高斯白噪声信道后的信号'); %解调部分 tz=tz.*zb; %相干解调之乘以相干载波 subplot(614) plot(t,tz) %画出乘以相干载波后的信号 axis([0,TotalT,-0.1,1.1]); %设置坐标范围 title("乘以相干载波后的信号") %低通
滤波器设计 wp=2*pi*2*fc*0.5; %通带截止烦率 ws=2*pi*2*fc*0.9; %阻带截止频率 Rp=2; %Rp是通带波纹,As是阻带衰诚 As=45; [N,wc]=buttord(wp,ws,Rp,As,'s');%计算巴特洪斯滤波器阶次和截止频率 [B,A]=butter(N,wc,'s'); %频率变换法设计巴特沃斯低通滤波器 %低通滤波 h=tf(B,A); %转换为传输两数 dst=lsim(h,tz,t); %面出系统h对由nst和t描述的输入信号的时间响应 subplot(615) plot(t,dst) %画出经过低通滤波器后的信号 axis([0,TotalT,-0.1,1.1]); %设置坐标范围 title("经过低通滤波器后的信号"); %判决器 k=0.25; %设置抽样限值 pdst=1*(dst>0.25); %满足条件时抽样 subplot(616) plot(t,pdst) %画出经过抽样判决后的信号 axis([0,TotalT,-0.1,1.1]); %设置坐标范用 title("经过抽样判决后的信号") %画出频谱 %调制信号频谱 T=t(end);%时间 df=1/T;%频率 N=length(ask2);%采样长度 f=(-N/2:N/2-1)*df;%采样频率 sf=fftshift(abs(fft(ask2)));%对2ASK信号采用快速傅里叶变换并移到矩阵中心 figure(2) subplot(411) plot(f,sf)%画出调制信号频谱 title("调制信号频谱") %信源频谱 mf=fftshift(abs(fft(dnrz)));%对信源信号采用快速傅里叶变换并移到矩阵中心 subplot(412) plot(f,mf) %画出信源频谱波形 title("信源频谱") %乘以相干载波后的频谱 mmf=fftshift(abs(fft(tz)));%对相干载波信号采用快速傅里叶变换并移到矩阵中心 subplot(413) plot(f,mmf) %画出乘以相干载波后的频谱 title("乘以相干载波后的频谱") %经过低通滤波后的频谱 dmf=fftshift(abs(fft(dst)));%对低通滤波信号采用快速傅里叶变换并移到矩阵中心 subplot(414) plot(f,dmf) %画出经过低通滤波后的频谱 title("经过低通滤波后的频谱");
一些补充
1、开始输入随机信号生成部分,matlab中randint(m,n,[A,B])已经不能用,要用randi([A,B],m,n)。生成取值在[A,B]的m*n的矩阵。 2、采用模拟调制,相干解调。 有什么问题可以留言~