📄 2fskm.txt
字号:
l=linspace(0,pi,50);% 数据初始化
t=linspace(0,9*pi,450);
b=1:1:9;
out=1:1:450;
f=1:1:450;
g=1:1:450;
w1=2 %正弦波f1的频率,可以根据自己想要的频率在此改写
w2=1 %正弦波f2的频率,可以根据自己想要的频率在此改写
f1=sin(w1*l);
figure(1);
f2=sin(w2*l);
figure(1);
subplot(2,1,1),plot(l,f1),axis([0 pi -1.2 1.2]),xlabel('t'),ylabel('f1');%画出f1信号波形
subplot(2,1,2),plot(l,f2),axis([0 pi -1.2 1.2]),xlabel('t'),ylabel('f2');%画出f2信号波形
a=[0 1 0 0 0 1 1 0 1]
for i=1:9 %2FSK编码
if a(i)==0
for k=1:50 %如果二进制原码为0则输出f1波形
out(k+50*(i-1))=f1(k);
end
else
for j=1:50
out(j+50*(i-1))=f2(j); %r如果二进制原码为1则输出f2波形
end
end
end
for i=1:9 %2FSK解码
n=0;m=0;
for j=1:50
if out(j+50*(i-1))-f1(j)==0
n=n+1;
else if out(j+50*(i-1))-f2(j)==0
m=m+1;
end
end
end
if n>m
b(i)=0;
else b(i)=1;
end
end
b
for i=1:9 %画出解码后的波形 ,包括原码和解码出的码,进行对比
for j=1+50*(i-1):50*i
f(j)=a(i);
g(j)=b(i);
end
end
figure(2);
subplot(3,1,1),plot(t,f),axis([0 9*pi -0.2 1.2]),xlabel('t'),ylabel('数字基带调制原码');
subplot(3,1,2),plot(t,out),axis([0 9*pi -1.2 1.2]),xlabel('t'),ylabel('调制好的波形');
subplot(3,1,3),plot(t,g),axis([0 9*pi -0.2 1.2]),xlabel('t'),ylabel('解码得到的码');
[Num,Rat]=biterr(f,g)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -