毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

通信原理仿真实验系统设计与实现 第11页

更新时间:2009-6-5:  来源:毕业论文
通信原理仿真实验系统设计与实现 第11页
t0=10;  %时间序列长度
ts=0.001;  %画出原信号采用的抽样周期,注意不是题中的抽样周期
ts1=0.1;   %欠抽样时的周期
ts2=0.05;  %抽样条件满足
fs=1/ts;
fs1=1/ts1;
fs2=1/ts2;
df=0.5;
t=[-t0/2:ts:t0/2]; %计算序列第一步
x=sin(20*t);
m=x./t;    %计算出sinc函数
w=t0/(2*ts)+1;  %计算错误值标号
m(w)=20;        %修正错误值
m=m.*cos(100*t); %频谱搬移
[M,mn,dfy]=fftseq(m,ts,df); 
M=M/fs;
f=[0:dfy:dfy*length(mn)-dfy]-fs/2;
%pause; 
subplot(2,1,1)
plot(f,abs(fftshift(M)))
axis([-50,50,0,3]);  title('原信号的频谱')
t1=[-t0/2:ts1:t0/2];  %抽样不足的信号序列
x1=sin(20*t1);
m1=x1./t1;    %计算出sinc函数
w1=t0/(2*ts1)+1;  %计算错误值标号
m1(w1)=20;        %修正错误值
m1=m1.*cos(100*t1); %频谱搬移
[M1,mn1,df1]=fftseq(m1,ts1,df); 
M1=M1/fs1;
N1=[M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1];
f1=[-7*df1*length(mn1):df1:6*df1*length(mn1)-df1]-fs1/2;
subplot(2,2,3);    plot(f1,abs(fftshift(N1)))
title('不满足抽样要求');  axis([-50,50,0,5]);
t2=[-t0/2:ts2:t0/2];  %满足抽样要求的时间序列
x2=sin(20*t2);
m2=x2./t2;    %计算出sinc函数
w2=t0/(2*ts2)+1;  %计算错误值标号
m2(w2)=20;        %修正错误值
m2=m2.*cos(100*t2); %频谱搬移
[M2,mn2,df2]=fftseq(m2,ts2,df); 
M2=M2/fs2;
N2=[M2,M2,M2,M2,M2,M2,M2,M2,M2,M2,M2,M2,M2];
f2=[-7*df2*length(mn2):df2:6*df2*length(mn2)-df2]-fs2/2;
subplot(2,2,4);    plot(f2,abs(fftshift(N2)))
title('满足抽样要求');  axis([-50,50,0,3]);
xlabel('频率')

%单极性非归零码 snrz.m
function y=snrz(x)
%本函数实现将输入的一段代二进制代码编为相应的单极性非归零码输出
%输入X为二进制码,输出Y为编好的码
%给出计算每一个码元的点数,因为我们只有用离散的点来得出连续的函数表示
grid=300;
t=0:1/grid:length(x);  %给出相应的时间序列
for i=1:length(x)   %计算码元的值
    if(x(i)==1)  %若输入信息为1
        for j=1:grid, %该码元对应的点值取1
            y((i-1)*grid+j)=1;
        end
    else
        for j=1:grid, %反之信息为0,码元对应点值取0
            y((i-1)*grid+j)=0;
        end; end; end
y=[y,x(i)]; %给序列Y加上最的一位,便于做图
M=max(y);  m=min(y);
subplot(2,1,1);
plot(t,y);axis([0,i,m-0.1,M+0.1]);
title('1       0         0        1        1          0        0        0        0        1        0        1');
%单极性归零码 srz.m
function y=srz(x)
%本函数实现将输入的一段代二进制代码编为相应的单极性归零码输出
%输入X为二进制码,输出Y为编好的码
grid=200;
t=0:1/grid:length(x);  %给出相应的时间序列
for i=1:length(x)   %进行码型变换
    if(x(i)==1)  %若输入信息为1
        for j=1:grid/2
            y(grid/2*(2*i-2)+j)=1; %定义前半时间值为1
            y(grid/2*(2*i-1)+j)=0; %定义后半时间值为0
        end
    else
        for j=1:grid/2  %反之,输入信息为○
            y(grid*(i-1)+j)=0; %定义所有时间值为○
        end; end; end
y=[y,x(i)]; %给序列Y加上最的一位,便于做图
M=max(y);  m=min(y);
plot(t,y);axis([0,i,m-0.1,M+0.1]);
title('1       0       0       1       1       0       0       0       0       1       0       1');

%双极性非归零码 dnrz.m
function y=snrz(x)
%本函数实现将输入的一段代二进制代码编为相应的双极性非归零码输出
%输入X为二进制码,输出Y为编好的码
%给出计算每一个码元的点数,因为我们只有用离散的点来得出连续的函数表示
grid=300;
t=0:1/grid:length(x);  %给出相应的时间序列
for i=1:length(x)   %计算码元的值
    if(x(i)==1)  %若输入信息为1
        for j=1:grid, %该码元对应的点值取1
            y((i-1)*grid+j)=1;
        end
    else
        for j=1:grid, %反之信息为0,码元对应点值取0
            y((i-1)*grid+j)=-1;
        end; end; end
y=[y,x(i)]; %给序列Y加上最的一位,便于做图
M=max(y);  m=min(y);
subplot(2,1,1);
plot(t,y);axis([0,i,m-0.1,M+0.1]);
title('1       0         0        1        1          0        0        0        0        1        0        1');

%双极性归零码 drz.m
function y=drz(x)
%本函数实现将输入的一段代二进制代码编为相应的双极性归零码输出
%输入X为二进制码,输出Y为编好的码
%给出计算每一个码元的点数,因为我们只有用离散的点来得出连续的函数表示
grid=300;
t=0:1/grid:length(x);  %给出相应的时间序列
for i=1:length(x)   %计算码元的值
    if(x(i)==1) %若输入信息为1
        for j=1:grid/2

 << 上一页  [11] [12] [13] [14] 下一页

通信原理仿真实验系统设计与实现 第11页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。