fsk调制解调实验报告 matlab,FSK调制解调MATLAB源代码
发布日期:2021-10-23 03:55:27 浏览次数:5 分类:技术文章

本文共 2071 字,大约阅读时间需要 6 分钟。

关键词:FSK 高斯白噪声 调制 眼图 信噪比

function FSK

Fc=10;   %载频

Fs=40;   %系统采样频率

Fd=1;    %码速率

N=Fs/Fd;

df=10;

numSymb=25;%进行仿真的信息代码个数

M=2;       %进制数

SNRpBit=60;%信噪比

SNR=SNRpBit/log2(M);

seed=[12345 54321];

numPlot=25;

%产生25个二进制随机码

x=randsrc(numSymb,1,[0:M-1]);%产生25个二进制随机码

figure(1)

stem([0:numPlot-1],x(1:numPlot),'bx');

title('二进制随机序列')

xlabel('Time');

ylabel('Amplitude');

%调制

y=dmod(x,Fc,Fd,Fs,'fsk',M,df);

numModPlot=numPlot*Fs;

t=[0:numModPlot-1]./Fs;

figure(2)

plot(t,y(1:length(t)),'b-');

axis([min(t) max(t) -1.5 1.5]);

title('调制后的信号')

xlabel('Time');

ylabel('Amplitude');

%在已调信号中加入高斯白噪声

randn('state',seed(2));

y=awgn(y,SNR-10*log10(0.5)-10*log10(N),'measured',[],'dB');%在已调信号中加入高斯白噪声

figure(3)

plot(t,y(1:length(t)),'b-');%画出经过信道的实际信号

axis([min(t) max(t) -1.5 1.5]);

title('加入高斯白噪声后的已调信号')

xlabel('Time');

ylabel('Amplitude');

%相干解调

figure(4)

z1=ddemod(y,Fc,Fd,Fs,'fsk/eye',M,df);

title('相干解调后的信号的眼图')

%带输出波形的相干M元频移键控解调

figure(5)

stem([0:numPlot-1],x(1:numPlot),'bx');

hold on;

stem([0:numPlot-1],z1(1:numPlot),'ro');

hold off;

axis([0 numPlot -0.5 1.5]);

title('相干解调后的信号原序列比较')

legend('原输入二进制随机序列','相干解调后的信号')

xlabel('Time');

ylabel('Amplitude');

%非相干解调

figure(6)

z2=ddemod(y,Fc,Fd,Fs,'fsk/eye/noncoh',M,df);

title('非相干解调后的信号的眼图')

%带输出波形的非相干M元频移键控解调

figure(7)

stem([0:numPlot-1],x(1:numPlot),'bx');

hold on;

stem([0:numPlot-1],z2(1:numPlot),'ro');

hold off;

axis([0 numPlot -0.5 1.5]);

title('非相干解调后的信号')

legend('原输入二进制随机序列','非相干解调后的信号')

xlabel('Time');

ylabel('Amplitude');

%误码率统计

[errorSym ratioSym]=symerr(x,z1);

figure(8)

simbasebandex([0:1:5]);

title('相干解调后误码率统计')

[errorSym ratioSym]=symerr(x,z2);

figure(9)

simbasebandex([0:1:5]);

title('非相干解调后误码率统计')

%滤除高斯白噪声

Delay=3;R=0.5;PropD=0;   %滞后3s

[yf,tf]=rcosine(Fd,Fs,'fir',R,Delay);     %升余弦函数

[yo2,to2]=rcosflt(y,Fd,Fs,'filter',yf);

%加入高斯白噪声后的已调信号和经过升余弦滤波器后的已调信号

t=[0:numModPlot-1]./Fs;

figure(10)

plot(t,y(1:length(t)),'r-');

hold on;

plot(to2,yo2,'b-');

hold off;

axis([0 30 -1.5 1.5]);

xlabel('Time');

ylabel('Amplitude');

legend('加入高斯白噪声后的已调信号','经过升余弦滤波器后的已调信号')

title('升余弦滤波前后波形比较')

eyediagram(yo2,N);%眼图

title('加入高斯白噪声后的已调信号的眼图')

转载地址:https://blog.csdn.net/weixin_30496999/article/details/115821945 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mysql-sqlclient,SQL客户端管理工具(SQuirreL SQL Client)下载_SQL客户端管理工具(SQuirreL SQL Client)官方下载-太平洋下载中心...
下一篇:php生成最近七天日期和时间设置,PHP获取本周所有日期或者最近七天所有日期的方法...

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月09日 15时38分49秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章