1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > matlab2ask和2psk仿真实验代码

matlab2ask和2psk仿真实验代码

时间:2022-11-27 12:01:51

相关推荐

matlab2ask和2psk仿真实验代码

使用时将F2T.m和T2F.m文件放在和主函数相同的文件目录下即可。

F2T.m文件

function[t,st]=F2T(f,sf)df=f(2)-f(1);Fmx=(f(end)-f(1)+df);dt=1/Fmx;N=length(sf);T=dt*N;t=0:dt:T-dt;sff=fftshift(sf);st=Fmx*ifft(sff);

T2F.m文件

function[f,sf]=T2F(t,st)dt=t(2)-t(1);T=t(end);df=1/T;N=length(st);f=-N/2*df:df:N/2*df-df;sf=fft(st);sf=T/N*fftshift(sf);

2ASK仿真

主函数

clear allclose alli=5;%五个点%采样频率 c=100;j=i*c;%5000个点,步长t=linspace(0,i,j);fc=3;%载波频率,这里可以判断一个码元周期里面正弦波的个数,fm=fc;x=(rand(1,i));a=round(x);%四舍五入st=t;for n=1:iif a(n)<1for m=j/i*(n-1)+1:j/i*nst(m)=0;endelsefor m=j/i*(n-1)+1:j/i*nst(m)=1;end endendfigure(1);subplot(221);plot(t,st);%原方波信号axis([0,i,-0.2,1.2]);title('基带信号');s1=cos(2*pi*fc*t);%载波s1subplot(222);plot(t,s1);axis([0,i,-1,1]);title('载波信号');e_2ask=st.*s1;%调幅信号subplot(223);plot(t,e_2ask);axis([0,i,-1,1]);title('已调信号');at=e_2ask.*cos(2*pi*fc*t);%相干解调at=at-mean(at);%减去直流成分之后的解调信号%subplot(223);[f,af]=T2F(t,at);%信号变成频域[t,at]=lpf(f,af,2*fm);%通过低通滤波器的输出%抽样判决for m=0:i-1if at(1,m*c+c/2)<0for j=m*c+1:(m+1)*cat(1,j)=0;endelsefor j=m*c+1:(m+1)*cat(1,j)=1;endendendsubplot(224);plot(t,at);axis([0,5,-0.2,1.2]);title('相干解调后的波形')figure(2)plot(f,abs(af));

2ask中,信号的幅度只有两种变化状态,分别对应二进制中的0和1,当为0时无波形,当为1时,为原信号波形。

2ASK信号一般由单极性幅值为1的方波信号和正弦信号相乘。

结果

下面是2PSK仿真代码

clear allclose alli=5;%五个点%采样频率 c=100;j=i*c;%5000个点,步长t=linspace(0,i,j);fc=2;%载波频率,这里可以判断一个码元周期里面正弦波的个数,fm=fc;x=(rand(1,i));a=round(x);%四舍五入st=t;for n=1:iif a(n)<1for m=j/i*(n-1)+1:j/i*nst(m)=-1;endelsefor m=j/i*(n-1)+1:j/i*nst(m)=1;end endendfigure(1);subplot(221);plot(t,st);%原方波信号axis([0,i,-1.2,1.2]);title('基带信号');s1=cos(2*pi*fc*t);%载波s1subplot(222);plot(t,s1);axis([0,i,-1,1]);title('载波信号');e_2psk=st.*s1;%调制信号subplot(223);plot(t,e_2psk);axis([0,i,-1,1]);title('已调信号');at=e_2psk.*cos(2*pi*fc*t);%相干解调at=at-mean(at);%减去直流成分之后的解调信号%subplot(223);[f,af]=T2F(t,at);%信号变成频域[t,at]=lpf(f,af,2*fm);%通过低通滤波器的输出%抽样判决for m=0:i-1if at(1,m*c+c/2)<0for j=m*c+1:(m+1)*cat(1,j)=-1;endelsefor j=m*c+1:(m+1)*cat(1,j)=1;endendendsubplot(224);plot(t,at);axis([0,i,-1.2,1.2]);title('相干解调后的波形')figure(2)plot(f,abs(af));%画出af的频谱title(sprintf("采样频率是%d时的解调信号的频谱",c));

2psk仿真结果

原理

二进制相移键控(2PSK)是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。

2PSK信号一般可由一个双极性全占空矩形脉冲序列与一个正弦载波相乘。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。