第一篇:南通大学2012通信原理课程设计4题全
第一题 clear clc clf t0=0.15;ts=0.001;fc=250;snr=20;fs=1/ts;df=0.3;t=(0:ts:t0);snr_lin=10^(snr/10);
%信噪比
m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];c=cos(2.*pi.*fc.*t);
%载波 u=[2+0.85*m].*c;[M,m,df1]=fftseq(m,ts,df);M=M/fs;[U,u,df1]=fftseq(u,ts,df);U=U/fs;[C,c,df1]=fftseq(c,ts,df);f=[0:df1:df1*(length(m)-1)]-fs/2;dt=0.01;signal_power=sum(u.*u)*dt/(length(t).*dt);noise_power=signal_power/snr_lin;noise_std=sqrt(noise_power);n=noise_std*randn(1,length(u));r=u+n;
[N,n,df1]=fftseq(n,ts,df);
%对噪声进行fft N = N/fs;
%频率采样 [R,r,df1]=fftseq(r,ts,df);
%对最后的信号进行fft R = R/fs;signal_power noise_power figure(1)plot(t,m(1:length(t)))xlabel('Time')title('基带信号')figure(2)subplot(2,1,1)plot(t,c(1:length(t)))xlabel('Time')title('载波信号')subplot(2,1,2)plot(t,u(1:length(t)))xlabel('Time')title('调制信号')figure(3)subplot(2,1,1)plot(f,abs(fftshift(M)))xlabel('frequency')title('基带信号频谱')subplot(2,1,2)plot(f,abs(fftshift(U)))title('调制信号频谱')xlabel('frequency')figure(4)
subplot(2,1,1)
plot(t,n(1:length(t)))title('噪声信号')subplot(2,1,2)
plot(f,abs(fftshift(N)))axis([-200 200 0 0.15])title('噪声信号频谱')figure(5)subplot(2,1,1)
plot(t,r(1:length(t)))title('信号加噪声信号')axis([0 0.15-3 3])subplot(2,1,2)
plot(f,abs(fftshift(R)))title('信号加噪声信号频谱')axis([-500 500 0 0.15])
fftseq文件:
function [M,m,df]=fftseq(m,ts,df)fs=1/ts;n1=fs/df;n2=length(m);n=2^(max(nextpow2(n1),nextpow2(n2)));M=fft(m,n);m=[m,zeros(1,n-n2)];df=fs/n;signal_power =
2.0484 noise_power =
0.0205
%噪声时域显示
%噪声频域显示
%加噪调制信号时域显示
%加噪调制信号频域显示
示范课题:
第二题 clear clc clf b=3000;sn0=-20;sn1=30;ns=0.01;N=(sn0:ns:sn1);snrlin=10.^(N/10);ct=b.*log2(1+snrlin.*(1/b));plot(snrlin,ct)xlabel('s/n0')title('高斯信道容量')
clear clc clf n1=2.5;sn1=10.^n1;b0=300000;bs=10;B=(3000:bs:b0);b=1./B;ct=B.*(log2(1+sn1.*b));plot(B,ct)xlabel('B')title('信道容量')ct=(1/log(2)*sn1)
第三题 clear all;clf;Tb=1;f1=1000/Tb;f2=f1+1/Tb;phi=pi/4;N=12000;n=N/4;t=0:Tb/(n-1):Tb;%t=0:1/(n-1):1;T=0:4*Tb/(N-1):4*Tb;%T=0:4*1/(N-1):4*1;s1=[cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)];s2=[cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)];% assume the transmit signal is “1010”, ie.u2 u1 and u2 a=[cos(2*pi*f2*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f1*t+phi)];% a is the received signal b=a.*s1;c=a.*s2;
for j=1:4
for i=1:n;
d((j-1)*n+i)=sum(b((j-1)*n+1:(j-1)*n+i));
end;end;%求积分 for j=1:4
for i=1:n;
e((j-1)*n+i)=sum(c((j-1)*n+1:(j-1)*n+i));
end;end;%求积分
for j=1:4;
if d(j*n)>e(j*n);
f((j-1)*n+1:j*n)=zeros(1,n);%输出0
else
f((j-1)*n+1:j*n)=ones(1,n);%输出1
end;end;%比较器 figure(1)plot(T,a);xlabel('时间');ylabel('幅度');title('figure a');hold on figure(2)subplot(2,1,1);plot(T,b);ylabel('幅度');title('figure b');subplot(2,1,2)plot(T,c);ylabel('幅度');xlabel('时间');ylabel('幅度');title('figure c');hold on figure(3)subplot(3,1,1);plot(T,d);ylabel('幅度');title('figure d');subplot(3,1,2);plot(T,e);ylabel('幅度');title('figure e');subplot(3,1,3);plot(T,f);xlabel('时间');ylabel('幅度');title('figure f');
第四题(1)、n=15;k=5;g=[1 0 1 0 0 1 1 0 1 1 1];m=mMatrix(k);for i=0:2^k-1
nkm=[m(i+1,:)zeros(1,n-k)];
[q r]=deconv(nkm,g);
r=mod(r,2);
len_r=length(r);
r=[zeros(1,n-len_r)r];
c(i+1,:)=mod(nkm+r,2)end;
for i=1:2^k
weight(i)=sum(c(i,:));end;minW=weight(2)for i=3:2^k;
if weight(i) minW=weight(i); else end;end; 全部系统码字: c = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 最小重量:minW =7(2)、clear all;n=15;k=5;g=[1 0 1 0 0 1 1 0 1 1 1];m=[1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1];for i=1:5; nkm=[m(i,:)zeros(1,n-k)]; [q r]=deconv(nkm,g); r=mod(r,2); len_r=length(r); r=[zeros(1,n-len_r)r]; c(i,:)=mod(nkm+r,2);end;G=c H=[(G(:,k+1:n))' eye(n-k,n-k)] B=[1 1 0 0 1 0 1 0 0 1 1 0 1 1 0];S=mod(B*H',2) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 1 生成矩阵: G = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 校验矩阵:H = 0 0 0 0 校验子: S = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 mMatrix文件: function m=mMatrix(k)% m(1,:)=[0 0 0 0 0];m(2,:)=[0 0 0 0 1];for i=2:2^k-1; t=i; e=1; d=2^e; a=[0 0 0 0 0]; while 1; if t>d; e=e+1; d=2^e; else break; end; end; if t<2^e; e=e-1; end; while 1; if t-2^e==0; a(k-e)=1; break; end; if t-2^e>0; a(k-e)=1; t=t-2^e; e=e-1; else a(k-e)=0; e=e-1; end; end; m(i+1,:)=a; a=[0 0 0 0 0];end; 第一题 clear echo off t0=0.15;ts=0.001;fc=250;snr=20;fs=1/ts;t=(0:ts:t0);dt=0.01;df=0.3;snr_lin=10^(snr/10); m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];c=cos(2.*pi.*fc.*t);u=[2+0.85*m].*c;clf figure(1) %(1)m(t)和u(t)的波形 subplot(2,1,1)plot(t,m(1:length(t)))xlabel('Time')title('基带信号m(t)')subplot(2,1,2)plot(t,u(1:length(t)))xlabel('Time')title('调制信号u(t)') [M,m,df1]=fftseq(m,ts,df); %(2)m(t)和u(t)的频谱图 M=M/fs;[U,u,df1]=fftseq(u,ts,df);U=U/fs;[C,c,df1]=fftseq(c,ts,df);f=[0:df1:df1*(length(m)-1)]-fs/2;figure(2) subplot(2,1,1)plot(f,abs(fftshift(M)))xlabel('frequency')title('基带信号频谱M(f)')subplot(2,1,2)plot(f,abs(fftshift(U)))xlabel('frequency')title('调制信号频谱U(f)') signal_power=sum(u.*u)*dt/(length(t).*dt);%(3)周期T0=t0,求已调信号的功率 signal_power noise_power=signal_power/snr_lin; %(4)噪声功率 noise_power noise_std=sqrt(noise_power);n=noise_std*randn(1,length(u));r=u+n; figure(5)的波形; subplot(2,1,1) plot(t,n(1:length(t)))title('噪声信号')subplot(2,1,2) plot(t,r(1:length(t)))title('信号加噪声信号') [N,n,df1]=fftseq(n,ts,df); N = N/fs; [R,r,df1]=fftseq(r,ts,df); R = R/fs; figure(6) 频谱图; subplot(2,1,1) plot(f,abs(fftshift(N)))axis([-200 200 0 0.15])title('噪声信号频谱')axis([0 0.15-3 3])subplot(2,1,2) plot(f,abs(fftshift(R)))title('信号加噪声信号频谱')axis([-500 500 0 0.15]) M文件 function [M,m,df]=fftseq(m,ts,df)fs=1/ts;n1=fs/df;n2=length(m);n=2^(max(nextpow2(n1),nextpow2(n2)));M=fft(m,n);m=[m,zeros(1,n-n2)];df=fs/n; %(5) 噪声n(t)和已调信号加噪声(u(t)+ n(t)) %噪声时域显示 %加噪调制信号时域显示 %对噪声进行fft %频率采样 %对最后的信号进行fft %(6)噪声n(t)和已调信号加噪声(u(t)+ n(t))的%噪声频域显示 %加噪调制信号频域显示 第二题 clear echo off b=3000;sn0=-20;sn1=30;ns=0.01;N=(sn0:ns:sn1);snrlin=10.^(N/10);ct=b.*log2(1+snrlin.*(1/b));clf subplot(2,1,1)plot(snrlin,ct)xlabel('s/n0')title('高斯信道容量')clear echo off n1=25;sn1=10.^(n1/10);bs=10;B=(3000:bs:300000);b=1./B;ct=B.*(log2(1+sn1.*b));subplot(2,1,2)plot(B,ct)xlabel('B')title('B无限增加时信道容量')ct=(1/log(2)*sn1) ct = 456.2202 第三题 clear all;clf;Tb=1;f1=1000/Tb;f2=f1+1/Tb;phi=pi/4;N=12000;n=N/4;t=0:Tb/(n-1):Tb;%t=0:1/(n-1):1;T=0:4*Tb/(N-1):4*Tb;%T=0:4*1/(N-1):4*1;s1=[cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f1*t+phi)];s2=[cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f2*t+phi)];% assume the transmit signal is “1010”, ie.u2 u1 and u2 a=[cos(2*pi*f2*t+phi)cos(2*pi*f1*t+phi)cos(2*pi*f2*t+phi)cos(2*pi*f1*t+phi)];% a is the received signal b=a.*s1;c=a.*s2; for j=1:4 for i=1:n; d((j-1)*n+i)=sum(b((j-1)*n+1:(j-1)*n+i)); end;end;%求积分 for j=1:4 for i=1:n; e((j-1)*n+i)=sum(c((j-1)*n+1:(j-1)*n+i)); end;end;%求积分 for j=1:4; if d(j*n)>e(j*n); f((j-1)*n+1:j*n)=zeros(1,n);%输出0 else f((j-1)*n+1:j*n)=ones(1,n);%输出1 end;end;%比较器 figure(1)plot(T,a);xlabel('时间');ylabel('幅度');title('figure a');hold on figure(2)subplot(2,1,1);plot(T,b);ylabel('幅度');title('figure b');subplot(2,1,2)plot(T,c);ylabel('幅度');xlabel('时间');ylabel('幅度');title('figure c');hold on figure(3)subplot(3,1,1);plot(T,d);ylabel('幅度');title('figure d');subplot(3,1,2);plot(T,e);ylabel('幅度');title('figure e');subplot(3,1,3);plot(T,f);xlabel('时间');ylabel('幅度');title('figure f'); 第四题 n=15;k=5;g=[1 0 1 0 0 1 1 0 1 1 1];m=mMatrix(k);for i=0:2^k-1 nkm=[m(i+1,:)zeros(1,n-k)]; [q r]=deconv(nkm,g); r=mod(r,2); len_r=length(r); r=[zeros(1,n-len_r)r]; c(i+1,:)=mod(nkm+r,2)end; for i=1:2^k weight(i)=sum(c(i,:));end;minW=weight(2)for i=3:2^k; if weight(i) minW=weight(i); else end;end;c = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 minW = clear all;n=15;k=5;g=[1 0 1 0 0 1 1 0 1 1 1];m=[1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1];for i=1:5; nkm=[m(i,:)zeros(1,n-k)]; [q r]=deconv(nkm,g); r=mod(r,2); len_r=length(r); r=[zeros(1,n-len_r)r]; c(i,:)=mod(nkm+r,2);end;G=c H=[(G(:,k+1:n))' eye(n-k,n-k)] B=[1 1 0 0 1 0 1 0 0 1 1 0 1 1 0];S=mod(B*H',2) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 G = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 H = 0 0 0 0 0 0 0 0 0 0 S = 0 0 M文件 function m=mMatrix(k)% m(1,:)=[0 0 0 0 0];m(2,:)=[0 0 0 0 1];for i=2:2^k-1; t=i; e=1; d=2^e; a=[0 0 0 0 0]; while 1; if t>d; e=e+1; d=2^e; else break; end;1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 end; if t<2^e; e=e-1; end; while 1; if t-2^e==0; a(k-e)=1; break; end; if t-2^e>0; a(k-e)=1; t=t-2^e; e=e-1; else a(k-e)=0; e=e-1; end; end; m(i+1,:)=a; a=[0 0 0 0 0];end; 成都学院(成都大学)课程设计报告 数字通信系统的设计与实现 摘要:数字通信系统可分为数字频带传输通信系统、数字基带传输通信系统、模拟信号数字化传输通信系统。本设计主要介绍数字频带传输通信系统的二进制数字相对相位调制方式(2DPSK),并在此基础上运用MATLAB软件对2DPSK数字系统进行建模与基本的功能仿真,并通过对各模块的波形分析对系统的性能及可实现性做出评价。 关键词:频带传输;2DPSK;MATLAB; I 成都学院(成都大学)课程设计报告 目录 第1章 引言................................................................................1 1.1背景...............................................................................1 1.2 选题的目的和意义...................................................................2 1.3 本课程设计的主要内容...............................................................2 1.4 章节内容安排.......................................................................3 第2章2DPSK调制与解调原理.................................................................4 2.1 2DPSK信号的产生...................................................................4 2.2 2DPSK信号的调制...................................................................4 2.2.1 2DPSK模拟调制法.............................................................5 2.2.2 2DPSK键控法.................................................................5 2.3 2DPSK 信号的解调...................................................................6 2.3.1 极性比较法...................................................................7 2.3.2 相位比较法...................................................................7 第3章 基于Matlab的系统程序设计仿真.......................................................9 3.1设计流程图.........................................................................9 3.2仿真程序..........................................................................10 3.3仿真波形..........................................................................15 3.4参数要求..........................................................................20 第4章 结束语.............................................................................21 参考文献..................................................................................22 II 成都学院(成都大学)课程设计报告 第1章 引言 1.1背景 人类的社会活动和发展是与信息及其传递——通信密切相关的。当今世界已进入信息时代。通信已深入到社会各个领域,对人类的生活和社会的发展更加具有特殊重要的意义,对于远程通信来说,数字频带传输技术的发展尤为重要。 随着数字技术的飞速发展与数字器件的广泛使用数字信号处理在通信系统中的应用已经越来越重要。数字信号传输系统分为基带传输系统和频带传输系统。频带传输系统也叫数字调制系统,数字频带传输系统是一种利用调制器对传输信号进行频率交换的传输方式,该系统对基带信号进行调制,使其频谱搬移到适合在信道(一般为带通信道)上传输的频带上。信号调制的目的是为了更好的适应信号传输通道的频率特性,传输信号经过调制处理也能克服基带传输同频带过宽的缺点,提高线路的利用率,一举两得。研究数字频带通信系统是研究数字通信的基础,现代大多数数字通信系统都是频带通信系统。数字频带传输在应用上要比基带传输更广泛,应用范围更大,如:卫星通信、移动通信、光纤通信、均是在所规定信道频带内传输频带信号。 通信信号的调制识别成为研究热点之一,国内外都有相关方面的研究,并且取得很好的结果。80年代以来,通信和信号处理系统越来越复杂,各种新技术的发展对通信系统的实现起着重大的影响。通信系统复杂性的增加使得分析与设计所需的时间和费用也迅速上升,为了节约人力、物力、财力和时间,就需要进行系统仿真。近10年来,数字通信系统得到了迅速的发展,尤其是人们对数字通信系统的需求,已超过现今技术所能支持数据速率几个数量级,而可利用的无线频谱有限,只有使通信频谱利用率得到显著提高,才能满足通信容量的要求。尽管通过增加发射功率和带宽来提高系统输出信噪比可以改善系统性能,但这与移动通信的发展目标相违背。一个使数据速率增长得以实现的重要技术突破就是研究数字频带通信系统。 过去,数字信号处理一直是用模拟设备完成,近代,数字计算机的出现和大规模集成技术的高度发展,为数字频带通信系统的处理提供了强有力的手段。在电子各个领域,正日益广泛地用数字方法实现数字频带通信系统。 数字通信在其发展过程中表现出了强大的生命力,它冲破了传统模拟通信方式的统治,逐步地发展、完善。随着通信事业的发展,特别是各种宽带传输技术(例如光纤传输、数字微波等)、综合业务数字网(ISDH)的实用化,全数字化的通信方式必将逐步取代模拟通信方式而得到蓬勃发展。数字调制传输在现在通信中发挥着越来越重要的作用。为使数字信号能在带通信道中传输,必须用数字信号对载波进行调制,其调制方式与模拟信号调制相类似。根据数字信号控制波的参量不同也分为调幅、调频和调相三种方式。因数字信号对载波参数的调制通常采用数字信号的离散值对载波进行键控,故这三种数字调制方式被称为幅移键控(ASK)、成都学院(成都大学)课程设计报告 频移键控(FSK)和相移键控(PSK)。基于频带系统仿真是通信电子类专业教学和科研经常使用的一种方法。我们在计算机尝试仿真,在计算机上显示不同系统的工作原理进行波形观察、频谱分析和性能分析等,为数字频带传输系统以及通信系统设计和研究提供强有力的指导。 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。具有如下特点: 1)高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来; 2)具有完备的图形处理功能,实现计算结果和编程的可视化; 3)友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握; 4)功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等),为用户提供了大量方便实用的处理工具。 1.2 选题的目的和意义 当要测试一个传输系统的性能时,往往都是把它做出来,再对其进行测量计算。这样做的话,需要浪费大量财力和劳力。而现在我们利用计算机,把需要设计的方案进行计算机仿真,模拟测试出来传输系统,最后计算出来和他相关的误码率,误比特率等数据,得出这个传输系统性价比。在传输信号中,2DPSK与2PSK信号和2ASK及2FSK信号相比,具有较好的误码率性能,但2FSK对相位不敏感,为了保证2PSK的优点,又不会产生误码,将2PSK体制改进为二进制差分相移键控(2DPSK),及相对相移键控。2DPSK方式即是利用前后相邻码元的相对相位值去表示数字信息的一种方式。MATLAB是一种功能强大,效率高,交互性好的数值计算和可视化计算机高级语言,它将数值的分析,矩阵计算,信号处理和图形显示有机地融合为一体,形成了一个极其方便,用户界面有好的操作环境。随着其自身版本的不断提高,MATLAB得到了各个领域专家学者的广泛关注,其强大的扩展功能可以为各个领域的应用提供基础。目前,MATLAB已广泛应用于科学研究工程计算,仿真,自动控制等领域,是目前工程上流行最广泛的科学语言。数字频带系统的应用广泛,所以研究数字频带通信系统并用软件仿真,具有现实意义。 1.3 本课程设计的主要内容 实现对2DPSK数字频带通信系统的设计与建模。包括以下要求: (1)设计出规定的数字通信系统的结构,包括信源,调制,发送滤波器模块,信道,接受滤波器模块,解调以及信宿; (2)根据通信原理,设计出各个模块的参数(例如码速率,滤波器的截止频率等);(3)用Matlab实现该数字通信系统;(4)观察仿真并进行波形分析; 成都学院(成都大学)课程设计报告 (5)系统的性能评价(分析误码率)。 1.4 章节内容安排 本文共有四个章节,第一章为绪论,主要介绍数字通信系统的背景与发展,对我们的重要意义以及我们课程设计需要做的工作,要完成的主要内容;第二章是讲2DPSK产生的方法和调制与解调原理;第三章是讲基于Matlab的系统程序设计仿真,是本次的重点。第四章是结束语,是对本次课程设计的一个全面总结和心得体会。 成都学院(成都大学)课程设计报告 第2章2DPSK调制与解调原理 2.1 2DPSK信号的产生 2DPSK 是利用前后相邻码元的载波相对相位变化传递数字信息,载波相邻两码元的相位差定义为 nnn- 1(2-1) n、n-1分别表示第n及n-1个码元的载波初相。n0通常表示数字信息“0”,n通常表示数字信息“1”。波形如图2.1所示: 绝对码110100110相对码01001110112DPSK 图2-1 2DPSK波形 2.2 2DPSK信号的调制 S2DPSK(t)等于调制信号S(t)2DPSK的基本原理和2ASK是一样的,只是把输入的数字信息进行码变换,码变换后的信号S(t)乘以载波信号cos2fct。所以S2DPSK(t)的数学表达式为 S2DPSK(t)S(t)cos2fct(2-2) 根据功率谱公式可以算出S(t)的功率谱,用P(f)来表示。根据频移定理得到S(t)信号的功率谱 ''''A2P'ffcPs'ffcP2DPSK(f) (2-3)4s4 成都学院(成都大学)课程设计报告 '其中,Ps'f为双极性全占空矩形脉冲序列 S(t)的功率谱。 2.2.1 2DPSK模拟调制法 模拟调制法如图2-2所示,其中码变换过程为将绝对码变换为相对吗;码型变换的过程为将输入的单极性不归零码转换为双极性不归零码型;乘法器过程是将双极性不归零信号与载波相乘得到2DPSK信号。 双极性S(t)码变换相对码码型变换不归零乘法器coscte2DPSK(t)图2-2 模拟调制法 2.2.2 2DPSK键控法 基带信号差分变换反相器载波输入图2-3 键控法 选项开关已调信号 成都学院(成都大学)课程设计报告 2.3 2DPSK 信号的解调 2DPSK信号最常用的解调方法有两种,一种是极性比较法(相干解调法),另一种是相位比较法(非相干解调法)。 当采用2PSK解调时,设调制采用“1”变“0”不变规则。当发送端“1”时,收到的2PSK信号为: S2PSKcos2fct (2-4) 带通滤波器的输出是信号加窄带噪声: cos2fctni(t)1ni(t)cos2fctnQ(t)sin2fct (2-5) 上式与相干载波cos2fct相乘,得: cos2fctni(t)cos2fct1ni(t)cos22fctnQ(t)sin2fctcos2fct 111ni(t)1ni(t)cos4fct 224fctcos2f t (2-6) nQ(t)sinc式(2-6)所示信号经低通滤波器后得: x(t)1ni(t) (2-7) 显然,x(t)的瞬时值是均值为- 1、方差为nn0B2PSK2n0f的高斯随机变量。所以,x(t)的取样值的概率密度函数为: 2f1(x)同理,发端发“0”时,收到的2PSK信号为: 1e2n(x1)222n (2-8) S2PSKcos2fct (2-9) 带通滤波器的输出是信号加窄带噪声: cos2fctni(t)1ni(t)cos2fctnQ(t)sin2fct (2-10) 上式与相干载波cos2fct相乘,得: cos2fctni(t)cos2fct1ni(t)cos22fctnQ(t)sin2fctcos2fct 111ni(t)1ni(t)cos4fct 22nQ(t)sin4fctcos2fct (2-11) 式(2-11)所示信号经低通滤波器后得: x(t)1ni(t) (2-12) 成都学院(成都大学)课程设计报告 显然,x(t)的瞬时值是均值为 1、方差为nn0B2PSK2n0f的高斯随机变量。所以,x(t)的取样值的概率密度函数为: 2f0(x)1e2n(x1)222n (2-13) 当“1”、“0”等概率时,最佳判决门限为0。发“1”错判成“0”的概率为: 1P(0/1)f1(x)dxerfc(r) (2-14) 02根据PeP(0)P(1/0)P(1)P(0/1)得解调器平均误码率为: 11Peerfc(r)P(0)P(1)erfc(r) (2-15) 22式中,ra222n。 2PSK的反向工作问题:二分频电路恢复的载波有时与发光载波相同,有时反相。当本地载波反相,变为cos2fct时,则相乘器以后的输出波形都和载波同频同相时的情况相反,判决器输出的数字信号全错,与发送数码完全相反,这种情况称为反向工作。2DPSK只是解决了2PSK的反向工作问题,但是在2DPSK差分码中有一个出错时会引起两个相邻码元错误。所以2DPSK误码率为2PSK误码率的两倍 1Pe2erfc(r)P(0)P(1)erfc(r) (2-16) 22.3.1 极性比较法 解调原理:对2DPSK信号进行相干解调,恢复出想相对码,再经码反变换器变换为绝对码,从而恢复出发送的二进制数字信息。 e2DPSK(t)带通滤波器乘法器cosct低通滤波器抽样判决器定时脉冲码反变换器输出 图2-4 极性比较法解调 2.3.2 相位比较法 解调原理:对接收到的2DPSK信号延时一个码元间隔Ts,然后与2DPSK信号本身相乘,相乘结果反映了 成都学院(成都大学)课程设计报告 前后码元的相位差,经过低通滤波器后再抽样判决,可直接恢复出原始数字信息。 e2DPSK(t)带通滤波器低通滤波器抽样判决器定时脉冲码反变换器输出延迟Ts 图2-5 相位比较法解调 成都学院(成都大学)课程设计报告 第3章 基于Matlab的系统程序设计仿真 3.1设计流程图 产生随机序列差分编码脉冲整形调制生成DPSK信号加噪声高通滤波器延时低通滤波器抽样判决对比显示误码结束 图3-1 程序流程图 成都学院(成都大学)课程设计报告 3.2仿真程序 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % dpsk调制,非相干解调 % 参数: % 载波频率4800Hz,码元速率2400Hz % 采样率是载波频率的8倍 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Nyquist_Freq=19200;%奈奎斯特速率 CW_Freq=4800;%载波频率 Sample_Ratio=0.125;%载波频率/采样频率 m=15;%码元数目 N=2*(m+1)/Sample_Ratio;%采样点数,因为差分编码后会多出一个码元,所以是m+1 n=1:1:N;N0=randn(1,N);%噪声,均值为0,方差为1 % 21阶整形滤波器 b1=rcosfir(0.5,10,2/Sample_Ratio,1);% 30阶低通滤波器h2 f2=[0 0.125 0.4 1];w2= [1 0.95 0.1 0];b2 = fir2(30,f2,w2);% 随机序列 a=rand(1,m);for i=1:m if(a(1,i)>0.5)a(1,i)=1;else a(1,i)=-1;end;end;%差分编码 d_a=zeros(1,m+1);d_a(1,1)=-1; 成都学院(成都大学)课程设计报告 for i=1:m if(a(1,i)==d_a(1,i))d_a(1,i+1)=-1;else d_a(1,i+1)=1;end end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 对原序列进行采样 spread_a=zeros(1,N-2/Sample_Ratio);k=1;j=0;for i=1:N-2/Sample_Ratio if(j==2/Sample_Ratio)j=0;k=k+1;end j=j+1;spread_a(1,i)=a(1,k);end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 对差分编码后的序列进行采样 spread_d_a=zeros(1,N);k=1;j=0;for i=1:N if(j==2/Sample_Ratio)j=0;k=k+1;end j=j+1;spread_d_a(1,i)=d_a(1,k); 成都学院(成都大学)课程设计报告 end %脉冲整形 fft_spread_d_a=fft(spread_d_a,N);fft_b1=fft(b1,N);wave_shape_d_a=ifft(fft_spread_d_a.*abs(fft_b1));%功率归1化 energy_sum=0;for i=1:N energy_sum=energy_sum+wave_shape_d_a(1,i)^2;end average_power=energy_sum/N;wave_shape_d_a=wave_shape_d_a/sqrt(average_power);%功率归1化 %随机序列和差分编码后的波形 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure(1);subplot(2,1,1);plot(spread_a/max(spread_a),'k');% 随机序列时域波形 title(' 随机序列时域波形');axis([1 N-1.5 1.5]);subplot(2,1,2);plot(spread_d_a/max(spread_d_a),'k');%随机序列幅频特性 title(' 随机序列差分编码后波形');axis([1 N-1.5 1.5]);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %整形以后的信号 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% fft_wave_shape_d_a=fft(wave_shape_d_a,N);figure(2);subplot(2,1,1);plot(wave_shape_d_a/max(wave_shape_d_a),'k');% 整形以后的信号时域波形 成都学院(成都大学)课程设计报告 title('脉冲成形后时域波形');subplot(2,1,2);plot((0:N-1)*2*pi/N,abs(fft_wave_shape_d_a)/max(abs(fft_wave_shape_d_a)),'k');%整形以后的信号幅频特性 title('脉冲成形后频域波形');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %调制以后生成dpsk信号 dpsk_m=zeros(1,N);j=0;k=1;for i=1:N if(j==2/Sample_Ratio)j=1;k=k+1;end dpsk_m(1,i)=wave_shape_d_a(1,i)*cos(2*pi*Sample_Ratio*i);%调制 j=j+1;end %调制以后的信号 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% fft_dpsk_m=fft(dpsk_m,N);figure(3);subplot(2,1,1);plot(dpsk_m/max(dpsk_m),'k');% 调制以后的信号时域波形 title('调制后时域波形');subplot(2,1,2);plot((0:N-1)*2*pi/N,abs(fft_dpsk_m)/max(abs(fft_dpsk_m)),'k');%调制以后 的信号幅频特性 title('调制后频域波形');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 信号加噪声,模拟信道 dpsk_m=dpsk_m+N0; 成都学院(成都大学)课程设计报告 %加噪以后的信号 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% fft_dpsk_m=fft(dpsk_m,N);figure(4);subplot(2,1,1);plot(dpsk_m/max(dpsk_m),'k');% 加噪以后的信号时域波形 title('加噪后时域波形');subplot(2,1,2);plot((0:N-1)*2*pi/N,abs(fft_dpsk_m)/max(abs(fft_dpsk_m)),'k');%加噪以后的信号幅频特性 %滤波 fft_b2=fft(b2,N);%N点的FFT变换 fft_y1=fft_dpsk_m.*(abs(fft_b2));y1=ifft(fft_y1);%低通滤波后得到的信号 %相乘以后的信号 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure(5);subplot(2,1,1);plot(dpsk_m/max(dpsk_m),'k');%相乘后的信号时域波形 title('相乘后频域波形');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %滤波以后的信号 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure(6);subplot(2,1,1);plot(y1/max(y1),'k');% 滤波以后的信号时域波形 title('滤波后时域波形');subplot(2,1,2);plot((0:N-1)*2*pi/N,abs(fft_y1)/max(abs(fft_y1)),'k');%滤波以后的信号幅频特性 title('滤波后频域波形');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 成都学院(成都大学)课程设计报告 %抽样和判决 an=zeros(1,m+1);for i=1:m an(1,i)=y1(1,2/Sample_Ratio*i+1/Sample_Ratio);end;result=zeros(1,m);for i=1:m if(an(1,i)>0)result(1,i)=-1;else result(1,i)=1;end;end;%误码情况 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure(7);plot(result,'ko');hold on;plot(a,'kx');axis([1 m-1.5 1.5]);legend('判决后','原码');title('误码情况');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3.3仿真波形 说明:在画图时,进行了归一化处理。噪声的方差为1,随机序列的幅度为1,调制加噪后信噪比为-3dB,按照理想情况计算,解调后信噪比为0dB。 成都学院(成都大学)课程设计报告 图3-2 随机序列15个 图3-3 脉冲形成后的波形 成都学院(成都大学)课程设计报告 图3-4 调制后的波形 图3-5 加噪后的波形 成都学院(成都大学)课程设计报告 图3-6 相乘后时域波形 图3-7 滤波后的波形 成都学院(成都大学)课程设计报告 图3-8 误码情况(0dB) 在统计误码率时,考虑到程序运行时间,码元个数为:65536,在高信噪比下统计的误码率可信度较低。判决前的信噪比按下式计算:SNRA/,其中A为已调信号的幅度,为噪声方差。2DPSK的理论误码率为:0.5*exp(r),其中r=SNRA/为判决时的信噪比。 2DPSK在10dB,8dB,6dB,4dB,2dB,0dB,2dB,4dB,6dB,8dB,10dB的信噪比下的误码率依次为 0.*** 0.*** 0.*** 0.370***5 0.*** 0.*** 0.*** 0.***4 0.***3 0.***87 22222成都学院(成都大学)课程设计报告 0.000***0357 根据以上数据以及对应的理论数据,绘制的误码率曲线如下图所示: 图3-9 误码曲线 由图3-9可知,系统误码率误大小和系统的信噪比成反比,及信噪比越大,误码率越小。增加信噪比有利于增强传输系统的传输能力。 3.4参数要求 码元速率2400波特,载波频率4800Hz,奈奎斯特频率19200Hz。 采样频率:为码元速率的16倍,即奈奎斯特频率为码元速率的8倍,在计算误码率时,采样频率为码元速率的8倍,即奈奎斯特频率为码元速率的4倍。 脉冲成形滤波器参数:脉冲成形滤波器选用FIR型升余弦滤波器,滚降系数为0.5,阶数为21,调用Matlab中的rcosfir函数来设计滤波器。 低通滤波器:低通滤波器选用FIR型低通滤波器,参数为: f20 0.125 0.4 1;w2 1 0.95 0.1 0; b2 fir230,f2,w2;调用fir2函数来生成。 成都学院(成都大学)课程设计报告 第4章 结束语 经历了两周的课程设计,我觉的我学到了很多东西吧。课程设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。还有在此次设计过程中也有互相的合作,这让我也意识到团队合作的重要性,甚至在一定程度上决定了设计的成败。 通过这次课程设计,我对通信系统的仿真有了很大的了解,掌握的设计的方法和思路,学会将知识运用于实际的方法,提高分析和解决问题的能力,掌握了一些基本通信电路的结构原理,能熟练使用Matlab软件进行程序仿真,能通过仿真波形得到自己想要的数据。然而,在这次课程设计中,我也发现了很多自身的不足,比如基础知识不扎实,耐心不够,马虎大意等等。在此,特别感谢,是他们给我不少帮助指示。今后,我将多多注意,不断的提升自己。 成都学院(成都大学)课程设计报告 参考文献 [1] 赵鸿图.通信原理MATLAB仿真教程.北京:人民邮电出版社,2010 [2] 黄葆华.通信原理.西安:西安电子科技大学出版社,2012 [3] 刘保柱.MATLAB 7.0 从入门到精通.北京:人民邮电出版社,2010 [4] 赵静.基于MATLAB的通信系统仿真.北京:北京航空航天大学出版社,2007 微机原理 课 程 设 计 指 导 书 南通大学计算机科学与技术学院计算机系统教研室 二零零九年五月 目 录 课程设计的目的和任务..................................................................................1 2 课程设计指导及要求.....................................................................................1 3 课程设计的主要步骤.....................................................................................1 3.1 总体设计................................................................................................2 3.2 硬件设计................................................................................................2 3.3 软件设计................................................................................................2 3.4 软、硬件联调........................................................................................2 4 课程设计报告内容及格式要求......................................................................2 5 进度安排........................................................................................................3 6 课程设计的考核方法及成绩评定...................................................................3 7 课程设计题目...................................................................................................3 7.1汇编程序设计题......................................................................................4 7.2 硬件设计题............................................................................................6 8 主要参考资料...................................................................................................8 附录:实验箱功能模块电路图............................................................................9 课程设计的目的和任务 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。课程设计指导及要求 在课程设计时,2~4人一组,在教师指导下,各组可以集体讨论,但设计报告由学生独立完成,不得互相抄袭。教师的主导作用主要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题,而不应处处被动地依赖指导老师。同组同学要发扬团队协作精神,积极主动的提出问题、解决问题、讨论问题,互相帮助和启发。 学生在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。指导教师要引导学生学会掌握和使用各种已有的技术资料,不能盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。学生要在老师的指导下制定好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成个阶段的设计任务。设计中可边设计,边修改,软件设计与硬件设计可交替进行,问题答疑与调试和方案修改相结合,提高设计的效率,保证按时完成设计工作并交出合格的设计报告。课程设计的主要步骤 课程设计分为硬件设计和软件设计两个部分,其设计过程可以归纳为以下所述的四个步骤: 3.1 总体设计 本阶段的任务是通过调查研究,查阅资料来初步确定系统结构的总体方案,其中主要涉及到硬件和软件的功能划分。 应用系统中硬件和软件具有一定的互换性,即某些功能既可以用硬件实现也可以用软件实现。一般说来,用硬件实现的优点是可以提高系统的工作速度,但会增加电路的复杂性和硬件成本;而用软件代替某些硬件的功能可以使电路简化,便于修改设计,降低硬件成本,但软件工作量增大。 总体设计时,必须在硬件和软件之间权衡,分工明确,然后分头开始设计。 3.2 硬件设计 利用实验箱的硬件资源,结合课程设计题目,设计硬件原理图,搭建硬件电路。 3.3 软件设计 1、采用模块化程序结构设计软件,可将整个软件分成若干功能模块。 2、画出程序流程图。 3、根据流程图,编写源程序。 4、上机调试程序。 3.4 软、硬件联调 课程设计报告内容及格式要求 【课程设计报告内容】 1、设计题目(在封面注明) 2、设计内容(在此部分详细说明所做题目的基本内容和主要功能) 3、设计原理及方案(含电路原理图、硬件连接示意图、系统功能框图、程序流程图等) 4、汇编源程序代码(关键代码要加必要注释) 5、实施结果(可给出程序运行界面、实验箱运行结果照片等) 6、课程设计体会 7、参考文献 【格式要求】 1、课程设计报告要求书写工整、内容充实、结论正确、符合设计要求。 2、报告有封面,其上注明学生班级、姓名、学号、指导教师、提交时间等完整信息。进度安排 课程设计的题目在课程设计开始之前下达给学生。学生可以在课余时间提前熟悉设计题目,查阅相关资料,确定总体方案,软、硬件功能划分,硬件接口原理图设计,程序设计等工作,为课程设计提前做好准备工作。 课程设计时间为2周的班级,完成7.1和7.2两部分的设计题,每部分以小组为单位各自选1题完成即可。课程设计时间为1周的班级,完成7.2部分的设计题,以小组为单位自选1题即可。课程设计的考核方法及成绩评定 考核方法:现场验收(占50%),课程设计报告(占50%)。 考核内容:学习态度(出勤情况,平时表现等)、方案合理性、程序编制质量、演示效果、答辩情况及设计报告质量。 成绩评定:优,良,中,及格,不及格。特别说明:如发现抄袭,按照不及格处理。课程设计题目 【选题说明】 每2~4个同学组队,分组设计,一组一题。可从上述题目中任选2题,也可自拟题目,例如硬件应用中对多道题目的要求自行组合,由教师审核通过后,酌情划级。如出现多组同题,每多一组,最后得分降一级(实施方案不同者例外)。 【题目标记说明】 ▲ 全组最高分:中,其他人降一级。◇ 全组可能最高分:良,其他人降一级。◆ 全组最高分:良,其他人降一级。☆ 全组可能最高分:优,其他人降一级。★ 全组最高分:优,其他人降一级。标记符号个数标明可获最高分人数。 7.1汇编程序设计题 题目一 密码设置模拟 该程序可以进行密码的设置(第一次)和修改(已设置密码)。要求输入的密码不显示。(字符提示型 ▲)(图形交互型 ★)(文件存储型 ★★) 题目二 计算器 编辑程序可以实现键盘输入数据与运算符,进行“加减乘除”运算。(提示:先输入数据与运算符,保存,再按照运算符选择对应的子程序;输入的数据是用字符表示的,需要转换;要有良好的界面(提示信息))(字符逐行提示型 ▲)(字符表达式交互型 ◆)(图形交互型 ★☆) 题目三 吃豆子程序 在屏幕上显示多行“豆子”(用“.”表示),用一个“嘴巴”(用字符“C”表示),程序运行时,单击空格,“嘴巴”开始从左到右逐行或者在键盘控制下开始“吃豆子”,一直到“豆子”被吃完停止或者单击空格暂停。(功能实现型 ★)(键盘交互型 ★★) 题目四 工作周期判断程序 输入年、月、日,能够判断当日的星期数,并进行输出。(以校历为依照,可设某日为起点,根据相差的天数与7的关系进行判断)。(功能实现型 ▲)(图形界面 ◆) 题目五 PC扬声器发声 利用8253驱动PC机内扬声器发声,PC结构参考相关文献资料。(功能实现型 ▲)(时间设定型 ◆) 题目六 乐曲播放 利用PC机内8253实现乐曲播放。(◆)题目七 21度音程的钢琴程序 本程序将键盘变成钢琴键盘,选择键盘上21个按键,作为低、中、高音21度音。通过此程序驱动PC机扬声器发出不同的音调。(◆) 题目八 按键选择乐曲播放 利用按键选择播放不同乐曲。(★)(自制交互界面实现按键选择★★)题目九 制作开发小组介绍界面 (字符效果 ◆)(图形效果 ★)(动态效果 ★☆) 题目十 制作奥运五环效果 (图形效果 ★)(定时中断实现变色或者闪烁 ★★)题目十一 动态五角星 程序运行时显示提示信息,并按任意键生成一个初始的全屏显示五角星。(图形效果 ★) 题目十二 实现闪烁文字效果(功能实现 ★)编程提示: 提示信息于屏幕中央显示出来,用光标定位子程序将光标定位于80*25显示方式的第8行第10列,然后输出一条提示信息,接着调用屏幕上卷子程序上卷一行,接着再定位光标,然后显示下一条提示信息,直到所有信息显示完毕,对于闪烁的信息,同样是定位光标,然后用BIOS功能调用13H来显示闪烁信息,当BL的高位为1时,字符闪烁。 mov ah,00h mov al,03h ;设置显示方式为80*25,16色文本 int 10h 题目十三 数字秒表 设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。(功能实现 ◆)(定时计秒功能 ★) 题目十四 倒计时牌 设计日期倒计时牌界面,可输入设定日期,显示当前日期的统计天数,如奥运计时牌。(功能实现 ▲)(读秒刷新时间倒数效果 ◆)(图形效果 ★) 题目十五 数字时钟 编程实现时钟功能,按秒刷新,要求定位在屏幕右上角。(功能实现 ◇)(图形效果 ◆)(闹钟效果 ★) 题目十六 模拟流水灯 显示由字符构成的各种颜色的流水灯或几何图形。(功能实现◆)(按键控制流水灯效果切换时间☆)(设计效果有创意★★) 7.2 硬件设计题 总体要求:根据题意自行设计电路,在实验箱上连接线路并编写相关汇编程序,调试成功。 题目一 交通灯控制系统 1.利用8253定时,8259中断及8255设计电路,实现十字路口交通灯模拟控制。2.实现能自动控制和手动应急控制。(◆) 3.实现能随时可以调整自动模式的绿灯和红灯时间。(☆)题目二 利用D/A产生波形 1.利用D/A设计一个波形发生器,能分别产生三角波、正弦波、锯齿波和方波。(功能实现▲) 2.能利用按键(自行定义)进行输出波形选择。(◆)题目三 利用D/A设计一个三角波发生器 可利用键盘改变其输出波形的幅值。例如,可利用1—5这5个数字键改变其输出波形的幅值,当按下1—5数字键时使D/A输出幅值从1V增加到5V。(开关控制 ◆)(按键控制 ☆) 题目四 实现特定功能的键盘及LED显示 了解键盘及LED显示接口原理,设计实验电路图完成以下功能: 1.按1键显示年; 2.按2键显示月日; 3.按3键显示GOOD ;(以上3个功能实现▲) 4.按4键数码管由左到右字符“0”循环显示。(4个功能实现◆)5.自行设计特效显示功能。(4个功能实现并加做此功能★☆)题目五 温度采集及显示控制 1.利用A/D 转换器,实现温度采集并在数码管上显示(保留1位小数)(☆☆)。 2.用红绿灯指示温度范围。温度在给定范围内,绿灯亮;若超过指定温度,红灯显示警告。(2功能实现★☆) 题目六 编程实现步进电机的控制 1.查找资料,了解步进电机的性能及原理,写出控制方法。2.实现步进电机的正、反转功能。(◆) 题目七 直流电机调速系统 1.了解直流电机闭环调速的方法。 2.实现直流电机由慢到快,再由快到慢的变速的功能。(◆)题目八 LED七段数码管数字钟 设计并完成LED七段数码管数字钟电路,数字钟显示格式为:HH:MM:SS。要求:具有通过键盘能够调整时、分、秒的功能。(★☆) 题目九 花式跑马灯 要求自行设计电路并连线,实现具有5种以上花式的跑马灯。(开关选择 ▲)(按键选择 ◆)(带定时按键选择 ★)(利用8259芯片实现触发式控制 ★) 题目十 显示牌 利用七段数码管显示制作人员。(功能实现 ◆)(按键切换自行设计的效果 ★)题目十一 闪烁灯 利用8253实现闪烁灯效果。(功能实现 ▲)(带闪烁时间控制 ◆)(简易定时功能 ◆)(利用七段数码管辅助,实现定时设定功能 ★) 题目十二 利用D/A芯片实现电机转速控制 利用D/A芯片实现电机转速控制。要求可以通过输入选择电机转速的档位。(开关实现多档位转速选择 ▲)(按键实现多档位转速选择 ☆)(带LED显示实现多档位转速选择 ☆)(带七段数码管显示实现多档位转速选择 ★)(带测速电机转速控制 ★★) 题目十三 利用A/D芯片实现电压测定系统 要求显示电压值。(二进制值的LED显示 ▲)(七段数码管显示,按精度判分 ☆)题目十四 多设备状态监视系统 设计一多设备状态监视系统,多设备状态可用开关模拟。若发现一台异常,低电平变高电平,报警(指示灯亮),一旦恢复,撤除报警。可用8255A的做为8个状态监视输入和8个报警指示灯输出端口,也可用中断实现状态异常检测。(功能实现 ☆) 题目十五 电子钟 利用8253定时器设计一个电子钟,并定义一个启动键。当按下该键时电子时钟从当前设定值开始走时。(功能实现 ☆)(带时间调整 ★)(带闹钟提示,可以利用LED提醒 ★★) 题目十六 电子秒表 设计一个可任意启动/停止的电子秒表,要求用6位LED数码显示,计时单位为1/100秒。利用功能键进行启/停控制。其功能为:上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零后重新开始计时。可用开关控制,也可用按键控制。(开关控制 ☆)(按键控制★) 题目十七 温度测控系统 利用ADC0809采用中断方式设计一个温度测控系统,在七段数码管上显示温度值,并根据测试的温度进行控制。当检测温度到达温度上限60℃时启动直流电动机,而温度低于下限30℃时停止电动机。数码管上的显示内容为:XX C(采用十进制显示)(温度值在数码管上显示☆☆)(全部功能实现 ★★) 题目十八 函数发生器 利用D/A设计一个函数发生器,可利用按键选择输出波形,能分别产生三角波、阶梯波(每阶梯1V)、正向锯齿波、负向锯齿波和方波。可利用自行定义的按键进行输出波形选择,同时将当前输出波形代号显示在LED上(左边位):0为方波、1为正向锯齿波、2为负向锯齿波、3 为三角波、4为阶梯波。(开关控制 ☆)(按键控制 ★)(幅值可调 ★★) 题目十九 压力测控系统 对压力传感器的信号进行检测。当压力低于30pa时,黄灯闪烁;当压力高于150pa时,红灯闪烁,闪烁周期为1秒。(功能实现☆)(基本功能实现并在数码管显示压力值,格式为P=XXX,★)(前面2功能实现,并可手动设定压力临界值★★)。 题目二十 电压报警器 设计一个电压报警器,要求采集实验箱提供的0~5V的电压,当输入电压在3V以内,显示电压值,如2.42。当输入电压超过3V,显示ERR,并报警。电压值可在七段数码管显示,点阵广告屏显示或液晶屏显示。报警形式自行设计,可用灯光闪烁表示,蜂鸣器鸣响报警等形式。(电压值以一种方式正确显示,无报警◆)(电压值以一种方式正确显示,且有一种形式的报警◆◆)(电压值以2种方式正确显示,且有2种形式的报警★★)(电压值以3种方式正确显示,且有2种形式的报警★★★)主要参考资料 1.周明德.微型计算机系统原理及应用.北京:清华大学出版社 2.张弥左,王兆月,邢立军等.微型计算机接口技术.北京:机械工业出版社 3.戴梅萼,史嘉权.微型计算机技术及应用.北京:清华大学出版社 附录:实验箱功能模块电路图 通 题目: 信 原 理课程设计 基于MATLAB的系统的2ASK仿真 五、设计心得和体会„„„„„„„„„„„„„„„„„„„„„„„ 1、心得和体会…………………………………………………………… 2、致谢…………………………………………………………………… 参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„ 一、2ASK通信系统发展背景 随着通信技术日新月异的发展,尤其是数字通信的快速发展越来越普及,研究人员对其相关技术投入了极大的兴趣。为使数字信号能在带通信道中传输,必须用数字信号对载波进行调制,其调制方式与模拟信号调制相类似。根据数字信号控制载波的参量不同也分为调幅、调频和调相三种方式。因数字信号对载波参数的调制通常采用数字信号的离散值对载波进行键控,故这三种数字调制方式被称为幅移键控(ASK)、频移键控(FSK)和相移键控(PSK)。经调制后的信号,通过信道传输,在接收端解调后恢复成数字信号。因此,调制解调技术是实现现代通信的重要手段,促进通信的快速发展。 现代通信系统要求通信距离远、通信容量大、传输质量好。作为其关键技术之一的调制解调技术一直是人们研究的一个重要方向。从最早的模拟调幅调频技术的日臻完善,到现在数字调制技术的广泛运用,使得信息的传输更为有效和可靠。二进制数字振幅键控是一种古老的调制方式,也是各种数字调制的基础。 二、仿真设计原理 1、2ASK信号的调制 2ASK技术是通过改变载波信号的幅值变化来表示二进制0或1的。载波0,1信息只改变其振幅,而频率和相位保持不变。通常使用其最大值Acos(t)和0分别表示1和0.有一种常用的幅值键控技术是开关键控(OOK)在OOK中,把一个幅度取为0,另一个幅度取为非0,其优点是传输信息所需的能量下降了,且调制方法简单.OOK的产生原理如图2、2ASK信号的解调 接收端接收信号传来的2ASK信号,首先经过带通滤波器滤掉传输过程中产生的噪声干扰,再从中回复原始数据信号。常用的解调方法有两种:包络解调法和相干解调法。 相干解调法 相干解调也叫同步解调,就是利用相干波和接收到的2ASK信号相乘分离出包含原始信号的低频信号,再进行抽样判决恢复数字序列。相干波必须是与发送端同频同相的正弦信号。Z(t)=y(t)cos(t)=m(t)cos2(t)=111m(t)[1+cos(2t)]=m(t)+m(t)cos(2t).式中1/2m(t)是基带信号,2221/2m(t)cos(2t)是频率为2的高频信号,利用低通滤波器可检测出基带信号,再经过抽样判决,即可恢复出原始数字信号序列{an},2ASK信号带宽为码元速率的2倍,即:B2ASK=2Rb.式中Rb为信息速率。 相干解调的原理图如下 三、直接用MATLAB编程仿真 1、实验框图 在数字基带传输系统中,为了使数字基带信号能够在信道中传输,要求信道应具有低通形式的传输特性。然而,在实际信道中,大多数信道具有带通传输特性,数字基带信号不能直接在这种带通传输特性的信道中传输。必须用数字基带信号对载波进行调制,产生 元速率Rb=1000Band,载波频率为f=4kHZ.以下是仿真程序及注释。例子中采用OOK键控方式实现2ASK调制。第一行为数字序列波***1的单极性不归零码,码元宽度Tb=1/Rb=0.001s,第二行为载波波形,在一个码元宽度,有4个周期的正玄波载波信号f=1/4Tb=4kHz;第三行为调整之后的波形,码元1对应的调制后波形对应正玄波,0对应的调制后波形为0,结果满足要求.。 %数字信号的ASK调制 3、使用MATLAB编程 Clear; %清空空间变量 m=[1 1 1 0 0 0 1 0 1 1 0 1]; %数字信号序列 Lm=length(m); %序列的长度 F=200; %数字信号的带宽 f=800; %正弦载波信号的频率 A=1; %载波的幅度 Q=f/F; %频率比,即一个码元宽度中的正弦周期个数,为适配下面的滤波器参数选取,Q>=1/3 M=500; %一个正弦周期内的采样点数 t=(0:M-1)/M/f; %一个正弦信号周期内的时间 carry1=repmat(A*sin(2*pi*f*t),1,Q);%一个码元宽度内的正弦载波信号 Lcarry1=length(carry1); %一个码元宽度内的信号长度 carry2=kron(ones(size(m)),carry1);%载波信号 ask=kron(m,carry1); %调制后的信号 N=length(ask); %长度 tau=(0:N-1)/(M-1)/f; %时间 Tmin=min(tau); %最小时刻 Tmax=max(tau); %最大时刻 T=ones(size(carry1)); %一个数字信号1 dsig=kron(m,T); %数字信号波形 subplot(3,1,1); %子图分割 plot(tau,dsig) %画出载波波形 grid on %添加网 axis([Tmin Tmax-0.2 1.2]) %设置坐标范围 subplot(3,1,2) %子图分割 plot(tau,carry2) %画出载波波形 grid on %添加网络 axis([Tmin Tmax-1.2*A 1.2*A]);%设置坐标范围 subplot(3,1,3) %子图分割 plot(tau,ask) %画出调制后的波形 grid on %添加网络 axis([Tmin Tmax-1.2*A 1.2*A])%设置坐标范围 y=(x(t_judge)); %抽样判决时刻的信号值 y_judge=1*(y>=th)+0*(y<=th); %抽样判决信号的0阶保持 y_value=kron(y_judge,ones(size(carry1))); %抽样判决后的数字信号波形 n_tau=tau+0.5/F; %抽样判决后的信号对应时间 subplot(4,1,3) plot(n_tau,y_value) axis([min(n_tau)max(n_tau)grid on subplot(4,1,4)plot(tau,dsig) axis([Tmin Tmax-0.2 1.2])grid on 1、图示 %子图分割 %画出抽样判决后的数字信号波形-0.2 1.2]) %画出原始信号波形与解调后信号作对比 四、仿真结果 011 为使仿真过程清晰,忽略了信道的传输延时等,仅考虑了抽样判决点选取时的延时0.5Tb,因码元波特率RB=1000Band,码元宽度Tb=1/Rb=0.001s 故0.5Tb=0.0005s,从图中标注可以看出,信号的起始点为0.0005s。 五、设计心得和体会 1、心得和体会 通过本次课程设计,我们主解了要了2ASK调制与解调原理,特别是2ASK调制解调电路的MATLAB实现与调制性能分析,把本学期学的通信原理等通信类科目的内容应用到本课程设计中来,进一步巩固复习通信原理,MATLAB等课程,以达到融会贯通的目的。 通过对通信系统原理和MATLAB的学习,在通过硬件实现时会时不时地会出现一些问题,诸如:某个芯片的用法、其适用范围、其典型应用时会出现的问题、滤波器的设计、模拟电路中反馈电阻与控制增益器件的调节等等,都需要理论知识和实践经验结合才能解决。在此期间,首先,通过查阅相关书籍、文献,搞清楚原理框图,为今后的实验及论文写作奠定比较扎实的理论;其次,在原理图的基础之上,设计具体的硬件实现流程图,利用将一个大而复杂的系统分解转化为多个小而简单的模块的思想,在进行整合、连接,将复杂的问题简单化。了解了更多关于通信的知识,对以后的学习和工作又了莫大的帮助。通过本次课程设计,加强了对通信系统原理的理解,学会查寻资料、方案比较,以及设计计算及仿真等环节,进一步提高了分析解决实际问题的能力。在学习通信原理理论后进行一次电子设计与制作,锻炼了分析、解决电子电路问题的实际本领。为进一步学习计算机网络,数据通信,多媒体技术等课程打下坚实的基础。运用学习成果把课堂上学的系统化的理论知识,尝试性的应用于实际设计工作,并从理论的高度对设计工作的现代化提高一些有真惰性的建议和设想,检验学习成果,看一看课堂学习与实际工作到底有多大差距,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,更边学习内容提供实践依据。 2、致谢 在此,首先要感谢蔡老师对我们一直以来的关心和照顾,细心给我们解答疑惑,帮助我们更好的学习,同时还要谢谢同学们热情的帮助。最后,祝老师新年快乐!笑口常开! 参考文献 [1]《通信原理》(第2版)樊昌信 等编著 国防工业出版社 北京 2012年 [2]《MATLAB信息工程工具箱技术手册》魏巍 主编 国防工业出版社 北京 2004年 [3]《MATLAB通信仿真开发手册》孙屹 主编 李妍 编著国防工业出版社 北京2004年第二篇:通信原理 课程设计 全
第三篇:成都大学通信原理课程设计
第四篇:微机原理课程设计(南通大学)
第五篇:通信原理课程设计[范文]