通信原理matlab实验1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一

设计任务:

用MatLib仿真一个BFSK通信系统,基本参数:

1)fc=1000Hz;

2)Rb=100bps;

3)信息序列:“Hello world”的ASCII

实验与报告基本要求:

1)Matlab程序,要点旁注(可打印后手写);

2)绘出信号波形,绘出信号PSD;

3)给出解调后的信息序列;

4)将信息重复3遍以上,FSK信号保存为WAV文件格式,使用音频播放,聆听;M文件:

wave.m

function[t,mt]=wave(m,dt,fs)

l=length(m);

mt=[];

ddt=1/fs;

n=floor(dt*fs);

m_add=ones(1,n);

for i=1:l

if(m(i))

mt=[mt,m(i),m_add];

else

mt=[mt,m(i),m_add*0];

end

t=(1:((n+1)*l))*ddt;

end

my_filter.m

function[num,den]=my_filter(wp,ws,ap,as)

if nargin<4

as=15;

end

if nargin<4

ap=3;

end

[n,wn]=buttord(wp,ws,ap,as);

[num,den]=butter(n,wn);

end

代码:

f0=800;%‘0’码载波频率

f1=1200;%‘1’码载波频率

fs=4000;%采样频率

Rb=100;%比特率

dt=1/Rb;%一个比特发送时间

A0=2;%调制幅度

A1=2;%相干解调幅度

miu=0;sigma=0.3;%miu:高斯白噪声均值,sigma:高斯白噪声均方差

str='Hello world';%信号字符串

m_dec=abs(str);%将信号字符串转换成ASCII码(十进制) m_bin=dec2bin(m_dec,8);

m_bin=abs(m_bin)-48;%将十进制转换成8比特二进制矩阵

m=[];

for i=1:size(m_bin,1)

m=[m,m_bin(i,:)];

end%将二进制转换成行向量

[t,m]=wave(m,dt,fs);%对信号采样

mt_f1=m.*cos(2*pi*f1*t)*A0;%频率f1调制

mt_f0=(~m).*cos(2*pi*f0*t)*A0;%频率f0调制

mt=mt_f1+mt_f0;%发送信号

l=length(mt);

subplot(2,1,1);plot(t,mt);

grid on;xlabel('t/s');title('m(t)');%发送信号波形subplot(2,1,2);periodogram(mt,[],l,fs);grid on;%发送信号PSD

nt=normrnd(miu,sigma,1,l);%噪声

st=mt+nt;%接收信号

wp0=[0.65,1.05]/2;ws0=[0.7,0.9]/2;

[num0,den0]=my_filter(wp0,ws0);%产生650HZ

st_f0=filter(num0,den0,st);%过滤噪声

wp0=0.01;ws0=0.1;

[num0,den0]=my_filter(wp0,ws0);%产生20HZ

st_f0=filter(num0,den0,st_f0.*cos(2*pi*f0*t)*A1);%相干解调并通过低通滤波器

wp1=[1.05,1.35]/2;ws1=[1.1,1.3]/2;

[num1,den1]=my_filter(wp1,ws1);%产生1050HZ

st_f1=filter(num1,den1,st);%过滤噪声

st_f1=filter(num0,den0,st_f1.*cos(2*pi*f1*t)*A1);%相干解调并通过低通滤波器

figure(2);

subplot(2,1,1);

plot(t,st_f0);grid on;

xlabel('t/s');title('st_f0');%f0解调波形

subplot(2,1,2);

plot(t,st_f1);grid on;

xlabel('t/s');title('st_f1');%f1解调波形

m_r=(st_f1>st_f0);%判决输出

figure(3);

plot(t,m_r,'r');grid on;

xlabel('t/s'),title('m_r');%m_r波形

wavwrite(repmat(m_r,1,5),'hello.wav');

波形:

1.发送信号及其PSD:

2.解调后f0,f1信号

3.判决后波形:

相关文档
最新文档