基于Matlab振幅调制与解调及GUI界面设计_第1页
基于Matlab振幅调制与解调及GUI界面设计_第2页
基于Matlab振幅调制与解调及GUI界面设计_第3页
基于Matlab振幅调制与解调及GUI界面设计_第4页
基于Matlab振幅调制与解调及GUI界面设计_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通信系统课程设计报告基于Matlab的振幅调制与解调院(系): 机电学院 专业年级(班): 电信122 学 生: 徐晗 学 号: XXXXXXXXXXXX 指 导 教 师: XXXXXXXXXXXXXXXXXXXXX 完 成 时 间: 2015-6-25 摘 要信号与模拟通信之间中心问题就是把载有消息的信息经系统加工处理后,送入信道进行传送,从而实现数据的相互传递,与此同时信号的调制在信号传输过程重要性不可忽略。本系统基于MATLAB软件进行AM、DSB调制与解调程序设计,并用包络检波和同步检波分别实现已调信号的解调,绘制分析AM与DSB下调制信号、已调信号、解调信号的波形与频谱,最后通过GU

2、I界面进行可调节控制显示。关键词:Matlab;AM;DSB;调制与解调;GUI目录1 设计目的及要求11.1 目的11.2 题目与要求12理论基础12.1 AM调制与解调原理12.1.1 AM调制原理12.1.2 AM解调原理22.2 DSB调制与解调原理32.2.1 DSB调制原理32.2.2 DSB相干解调原理42.3 GUI简介43设计原理以及方案53.1 系统总体框图53.2 参数计算与设计53.2.1 基本信号参数53.2.1系数计算54实验结果与分析74.1 Matlab调制与解调波形、频谱观测74.1.1 单频调制信号74.1.2 多频调制信号94.2 GUI系统界面设计12总

3、结14参考文献15附录116附录224基于Matlab 振幅调制与解调及GUI系统界面设计-xuhan1 设计目的及要求1.1 目的通过对AM 和DSB调制与解调进行MATLAB程序设计,观察与分析相关信号时域、频域波形;深入理解AM与DSB调制与解调原理;掌握基于MATLAB软件开发环境下仿真方法。初步掌握GUI界面设计的流程及方法。1.2 题目与要求本系统基于MATLAB软件进行AM、DSB调制与解调程序设计,并记录分析相关信号波形与频谱等参数,此外附加进行GUI界面设计。具体内容如下:1) 画出AM与DSB下调制信号、已调信号、解调信号的波形与频谱2) 采用不同形式的调制信号,例如单频信

4、号和多频信号3) 用包络检波和同步检波实现已调信号的解调4) GUI界面设计2理论基础2.1 AM调制与解调原理2.1.1 AM调制原理所谓振幅调制,就是由调制信号去控制高频载波的振幅,直至随调制信号做线性变换。在线性调制中最先应用的是全调幅或常规调幅,简称为调幅(AM)。AM调制一般做法是先在原信号上叠加一个直流信号,然后乘以一个高频余弦载波,即可得到已调信号。在频域上的直观效果就是将调制信号频谱搬移到载波频谱附近。AM调制原理模型如图2-1。图2-1 AM调制原理图 调制信号:mt=sin0t (2.1)载波信号:ct=cosct (2.2)已调信号时域表达式:SAM(t)=A0+mt&#

5、215;cosct (2.3)其中,A0为其直流分量。已调信号频域表达式:SAM=A0+C+-C+12M+C+M-C 其中,m(t)为确知信号,信号频谱M()。2.1.2 AM解调原理2.1.2.1 AM相干解调相干解调,也叫同步检波。解调与调制的实质一样,均是频谱搬移。调制是把基带信号的频谱搬到了载频的位置,这一过程可以通过一个相乘器与载波相乘来实现。解调则是调制的逆过程,即把在载频位置的已调信号的频谱搬回到原始基带位置,因此采用“同频同相”载波信号与已调信号相乘,通过低通滤波器滤除高频部分,低频部分则包含所需的调制信号。AM相干解调原理模型如图2-2。图2-2 AM相干解调原理图 已调信号

6、时域表达式:SAM(t)=A0+mt×cosct (2.4)同频同相载波信号:ct=cosct (2.5)相乘后: SA(t)=A0+mt×cosct×cosct =12A0+mt+12A0+mt×cos 2ct (2.6)经过低通滤波器滤除高频成分后得:Sdt=12A0+mt (2.7)2.1.2.1 AM包络检波AM信号在满足|m(t)|max A0的条件下,其包络与调制信号m(t)形状完全一样,呈线性关系。因此AM解调除相干解调外,也可使用包络检波法。对已调信号采用包络检波法,隔去直流分量,进行系数缩放即可得到原调制信号。AM包络检波原理模型如图2

7、-3。图2-3 包络检波原理图输入已调信号:SAM(t)=A0+mt×cosct (2.8)检波器输出:Sb(t)=A0+mt (2.9)隔去直流后即可得到原调制信号m(t)。2.2 DSB调制与解调原理2.2.1 DSB调制原理AM信号中载波分量不携带信息,如果在AM调制模型中将直流分量A0去掉,即可得到一种高调制效率的调制方式抑制载波的双边带调幅波(DSB),其调制方式与AM调制相同。DSB已调信号:SDSB(t)=mt×cosct (2.10)已调信号频域表达式:SDSB=12M+C+M-C (2.11)其中,m(t)为确知信号,信号频谱M()。2.2.2 DSB相干

8、解调原理对于线性解调,DSB解调可采用相干解调法,原理框图与AM调制相同,采用“同频同相”载波信号与已调信号相乘,通过低通滤波器滤除高频部分,低频部分则包含所需的调制信号m(t)。已调信号时域表达式:SDSB(t)=mt×cosct (2.12)同频同相载波信号:ct=cosct (2.13)相乘后: SD(t)=mt×cosct×cosct =12m(t)+12m(t)×cos 2ct (2.14)经过低通滤波器滤除高频成分后得:Sdt=12m(t) (2.15)2.3 GUI简介图形用户界面(Graphical User Interface,简称 G

9、UI,又称图形用户接口)。是指采用图形方式显示的计算机操作用户界面。图形用户界面是一种人与计算机通信的界面显示格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。与通过键盘输入文本或字符命令来完成例行任务的字符界面相比,图形用户界面有许多优点。 图形用户界面由窗口、下拉菜单、对话框及其相应的控制机制构成,在各种新式应用程序中都是标准化的,即相同的操作总是以同样的方式来完成,在图形用户界面,用户看到和操作的都是图形对象,应用的是计算机图形学的技术。人们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进

10、行操作。 GUI的广泛应用是当今计算机发展的重大成就之一,随着中国 IT 产业,移动通讯产业,家电产业的迅猛发展,在产品的人机交互界面设计水平发展上日显滞后,这对于提高产业综合素质,提升与国际同等业者的竞争能力等等方面无疑起了制约的作用它极大地方便了非专业用户的使用。3设计原理以及方案3.1 系统总体框图 AM与DSB调制模式相同,就解调而言采用不同方法,AM解调分为相干解调及包络检波法,而DSB只能采用相干解调。根据系统设计要求设计如下研究框图,如图3-1。图3-1 系统框图 3.2 参数计算与设计 3.2.1 基本信号参数%xugege=AM 调制=xugege%t=0:0.00

11、1:1; 信号时间范围0,1A1=3; 直流分量 3V m=3*sin(10*pi*t); AM已调信号,频率5Hz,幅度3Vc=cos(50*pi*t); 载波信号,频率25Hz,幅度1V%xugege=AM相干解调=xugege%s=(A1+m).*c; s=awgn(s,5); 高斯白噪声,信噪比5dB3.2.1系数计算%* *椭圆低通滤波器设定*% Fs=1000; 滤波器采样频率1000HzRp=0.1; 通带最大衰减0.1dBRs=60; 阻带最小衰减60dBWp=4/100; 通带边界频率40HzWs=10/100; 阻带起始频率100Hzn,Wn = ellipord(Wp,W

12、s,Rp,Rs) b,a = ellip(n,Rp,Rs,Wn); Sh=filter(b,a,S); 鉴于GUI界面设计,设定载波信号幅度可调,设Ac,此时,相干解调后Sdt=AC22A0+mt故恢复信号则:%xugege=AM相干解调波形恢复=xugege%M=Sh*2/(Ac*Ac)-A0;DSB信号系数处理同理。%xugege=AM包络检波波形恢复=xugege%s=(A+m+2*A0).*c; env=abs(hilbert(s);u=1*(env/Ac-A-2*A0); 加2A0,保证s绝对正值,继而希尔伯特变换取包络env=| A0+mt+2A0 |=A0+mt+2A04实验结果

13、与分析4.1 Matlab调制与解调波形、频谱观测 4.1.1 单频调制信号从频域上可以看到,AM已调信号频谱25Hz载波谱线两侧间隔5Hz谱线伴随。调制信号、已调信号波形、频谱如图4-1。图4-1 AM调制、已调信号波形与频谱AM相干解调输出波形与原调制信号波形存在一定相移,经检验问题出自椭圆低通滤波器,单纯信号软件解调而言,亦可通过设置门函数滤波器相应函数处理,然考虑物理可实现性,程序编写中依然采用滤波器。如图4-2。图4-2 AM相干解调波形与原信号对此图4-3 AM相干解调滤波前后频谱对比图4-4 AM包络检波 从频域上可以看到,DSB已调信号频谱5Hz调制信号谱线直接平移25Hz长度

14、。图4-5 DSB调制、已调信号波形与频谱图4-6 DSB相干解调波形与原信号对此图4-7 DSB相干解调滤波前后频谱对比4.1.2 多频调制信号以双频调制信号为例,采用5Hz、10Hz调制信号,其他参数同单频不变。图4-8 AM调制、已调信号波形与频谱 图4-9 AM相干解调波形与原信号对此 图4-10 AM包络检波 图4-11 DSB调制、已调信号波形与频谱 图4-12 DSB相干解调波形与原信号对此 图4-13 DSB相干解调滤波前后频谱对比 4.2 GUI系统界面设计 设置调制信号幅度3V,载波50Hz,载波幅度4V,直流分量2V,信噪比10dB,GUI界面设计及部分结果显示如下图。图

15、4-14 AM已调信号波形及频谱图4-15 AM包络检波与原调制信号波形图4-16 DSB相干解调滤波前后频谱总结此次通信原理课程设计,本人选择的题目是Matlab下的振幅调制与解调,并在原要求的基础上与同学一起进行了GUI系统界面设计,虽完成既定任务与目标,然仍存在些许小问题,比如在AM与DSB相干解调部分,设计低通滤波器部分,经由搜索部分文档,网友整合文档推荐使用椭圆滤波器,然在学习课程和课下并未使用过,故按照网上提示自行设计椭圆低通滤波器,事后解调波形与原调制信号波形一致,然观察发现,解调后波形与原信号存在一定的相位差,经过课下一步步检验,排除程序原理问题、噪声影响等,初步断定受所设计的

16、椭圆滤波器影响,考虑到程序设计的物理可实现性,故此没有采用“纯软件”编辑方式解决,依然采用原低通滤波器。同时,本次设计中个人认为不仅仅是对AM、DSB调制与解调原理理解的加深,最让我心动的则是GUI设计,虽说以前从未接触,且目前实际掌握的部分难度系数不大,上手较快,但也进行了未知领域的探索,对此本人比较满意。参考文献1 李露,史振威,周付根.  基于Matlab/Simulink的幅度调制与解调综合实验设计J. 实验室研究与探索. 2011(01)2 徐红,赵小娟.  MATLAB在信号调制与解调的仿真实验中的应用J. 桂林航天工业高等专科学校学报. 2

17、010(04)3 邹德东,刘立民,王国辉.  浅谈单边带调幅(SSB)的调制与解调J. 煤矿安全. 2008(01)4 董玉婷,吴颀峰.  MATLAB应用于数字通信系统调制解调技术的仿真设计J. 科协论坛(下半月). 2007(08)5 张宇伟,王耀明.  基于Matlab的调制解调系统仿真设计J. 上海电机学院学报. 2005(05)6 王艳芬,于洪珍.  抑制载波调幅信号的计算机波形分析J. 实验科学与技术. 2005(03) 附录1% %=AM信号调制解调程序 (单频信号)=xugege%AM 调制程序t=

18、0:0.001:1; A1=3; %直流偏量 A0=3;m=A0*sin(10*pi*t); %调制信号 频率5Hzyk1=fft(m,512); yw1=2*pi*abs(fftshift(yk1); %频谱搬移fw1=-256:255/512*1000; figure(1)subplot(2,2,1) plot(t,m) xlabel('t/s');ylabel('幅度'); title('调制信号') subplot(2,2,2)plot(fw1,yw1) xlabel('频率/Hz') ; title('调制信号的

19、频谱') grid; c=cos(50*pi*t); %载波信号 频率25Hzs=(A1+m).*c; %已调信号 s=awgn(s,5); yk2=fft(s,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512*1000; subplot(2,2,3) plot(t,s) xlabel('t/s');ylabel('幅度'); title('已调信号') axis(0,1,-10,10); subplot(2,2,4)plot(fw2,yw2); xlabel('频率/HZ&

20、#39;);title('已调信号的频谱') grid; %AM信号相干解调程序Ac=1;m=A0*sin(10*pi*t); c=Ac*cos(50*pi*t); s=(A+m).*c; %已调信号 sa=awgn(s,10); %已调信号加噪声 S=sa.*c; %* 椭圆滤波器的设计*% Rp=0.1; %通带最大衰减为0.1dB Rs=60; %阻带最小衰减为60dB Wp=4/100; %通带截止频率 Ws=10/100; %阻带起始频率 n,Wn = ellipord(Wp,Ws,Rp,Rs) b,a = ellip(n,Rp,Rs,Wn); figure(2)H,

21、w=freqz(b,a,512);plot(abs(H);Sh=filter(b,a,S); %对信号进行滤波 M=Sh*2/(Ac*Ac)-A;figure(3) plot(t,m,t,M) ; legend('原调制信号','AM解调信号');title('AM解调信号与原调制信号对比');yk1=fft(S,512); yw1 = 2*pi*abs(fftshift(yk1); fw1=-256:255/512*1000; yk2=fft(Sh,512);yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/

22、512*1000; figure(4) subplot(2,1,1) plot(fw1,yw1) legend('滤波前的频谱图') subplot(2,1,2) plot(fw2,yw2) legend('滤波后的频谱图') % %*包络检波*%s=(A+m+2*A0).*c; %已调信号 env=abs(hilbert(s); %找出已调信号的包络 u=1*(env/Ac-A-2*A0); %去掉直流分量并重新缩放 figure(5); subplot(2,1,1); plot(t,u); xlabel('t/s');title('A

23、M已调信号的包络检波波形') axis(0,1,-10,10); Y=fft(u*0.294,512); subplot(2,1,2)plot(t,m)subplot(2,1,2);y=2*pi*abs(fftshift(Y); %频谱搬移xhz=-256:255/512*100; plot(xhz,y); xlabel('频率/Hz');title('AM已调信号的包络检波频谱'); % =DSB调制与解调(单频信号)=% DSB信号调制程序t=0:0.001:1; A0=3;Ac=10;m=A0*sin(10*pi*t); %调制信号yk1=fft(

24、m,512); yw1=2*pi*abs(fftshift(yk1); fw1=-256:255/512*100; plot(fw1,yw1) figure(1);subplot(2,2,1) plot(t,m) xlabel('t/s');ylabel('幅度'); title('调制信号') subplot(2,2,2) plot(fw1,yw1) xlabel('频率/Hz');title('调制信号的频谱') grid; c=Ac.*cos(50*pi*t); %载波信号 s=m.*c; %已调信号 s=a

25、wgn(s,10); yk2=fft(s,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512*100; subplot(2,2,3) plot(t,s) xlabel('t/s');ylabel('幅度'); title('已调信号') axis(0,1,-10,10); subplot(2,2,4) plot(fw2,yw2) xlabel('频率/HZ');title('已调信号的频谱') grid; %DSB信号解调程序 t=0:0.001:1; A=3;

26、 A0=3;Ac=4;m=A0*sin(10*pi*t); c=Ac*cos(50*pi*t); s=m.*c; %已调信号 sa=awgn(s,10); S=sa.*c; % 滤波器的设计 Rp=0.1; %通带最大衰减为0.1dB Rs=40; %阻带最小衰减为40dB Wp=5/100; %通带截止频率 Ws=10/100; %阻带起始频率 n,Wn = ellipord(Wp,Ws,Rp,Rs) b,a = ellip(n,Rp,Rs,Wn); Sh=filter(b,a,S); %对信号进行滤波 figure(2) plot(t,m,t,Sh*2/(Ac*Ac) legend(

27、9;原调制信号','解调后的调制信号');title('调制信号与解调信号对比') figure(3) yk1=fft(S,512); yw1 = 2*pi*abs(fftshift(yk1); fw1=-256:255/512; yk2=fft(Sh,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512; subplot(2,1,1) plot(fw1,yw1) legend('滤波前的频谱图') subplot(2,1,2) plot(fw2,yw2) legend('滤波后

28、的频谱图') % %=AM信号调制解调程序 (多频信号)=xugege% AM信号调制程序 t=0:0.001:1; A1=3; %直流偏量 m=3*sin(10*pi*t)+3*sin(20*pi*t); %调制信号 频率5Hzyk1=fft(m,512); yw1=2*pi*abs(fftshift(yk1); %频谱搬移fw1=-256:255/512*1000; figure(1)subplot(2,2,1) plot(t,m) xlabel('t/s');ylabel('幅度'); title('调制信号') subplot(2

29、,2,2)plot(fw1,yw1) xlabel('频率/Hz') ; title('调制信号的频谱') grid; c=cos(50*pi*t); %载波信号 频率25Hzs=(A1+m).*c; %已调信号 s=awgn(s,5); yk2=fft(s,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512*1000; subplot(2,2,3) plot(t,s) xlabel('t/s');ylabel('幅度'); title('已调信号') axis

30、(0,1,-10,10); subplot(2,2,4)plot(fw2,yw2); xlabel('频率/HZ');title('已调信号的频谱') grid; %AM信号相干解调程序 t=0:0.001:1; A=3;A0=3;Ac=1;m=A0*sin(10*pi*t)+A0*sin(20*pi*t); c=Ac*cos(50*pi*t); s=(A+m).*c; %已调信号 sa=awgn(s,10); %已调信号加噪声 S=sa.*c; %* 椭圆滤波器的设计*% Rp=0.1; %通带最大衰减为0.1dB Rs=60; %阻带最小衰减为60dB Wp

31、=6/100; %通带截止频率 Ws=10/100; %阻带起始频率 n,Wn = ellipord(Wp,Ws,Rp,Rs) b,a = ellip(n,Rp,Rs,Wn); figure(2)H,w=freqz(b,a,512);plot(abs(H);Sh=filter(b,a,S); %对信号进行滤波 M=Sh*2/(Ac*Ac)-A;figure(3) plot(t,m,t,M) ; legend('原调制信号','AM解调信号');title('AM解调信号与原调制信号对比');yk1=fft(S,512); yw1 = 2*pi*a

32、bs(fftshift(yk1); fw1=-256:255/512*1000; yk2=fft(Sh,512);yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512*1000; figure(4) subplot(2,1,1) plot(fw1,yw1) legend('滤波前的频谱图') subplot(2,1,2) plot(fw2,yw2) legend('滤波后的频谱图') %*% %*包络检波*% %*%s=(A+m+4*A0).*c; %已调信号 env=abs(hilbert(s); %找出已调信号的包络

33、u=1*(env/Ac-A-4*A0); %去掉直流分量并重新缩放 figure(5); subplot(2,1,1); plot(t,u); xlabel('t/s');title('AM已调信号的包络检波波形') axis(0,1,-10,10); Y=fft(u*0.294,512); subplot(2,1,2)plot(t,m)subplot(2,1,2);y=2*pi*abs(fftshift(Y); %频谱搬移xhz=-256:255/512*100; plot(xhz,y); xlabel('频率/Hz');title('

34、AM已调信号的包络检波频谱'); % %=DSB信号调制解调程序 (多频信号)=xugege%DSB信号调制程序 t=0:0.001:1; A0=3;Ac=10;m=A0*sin(10*pi*t)+A0*sin(20*pi*t); %调制信号yk1=fft(m,512); yw1=2*pi*abs(fftshift(yk1); fw1=-256:255/512*100; plot(fw1,yw1) figure(1);subplot(2,2,1) plot(t,m) xlabel('t/s');ylabel('幅度'); title('调制信号&

35、#39;) subplot(2,2,2) plot(fw1,yw1) xlabel('频率/Hz');title('调制信号的频谱') grid; c=Ac.*cos(50*pi*t); %载波信号 s=m.*c; %已调信号 s=awgn(s,10); yk2=fft(s,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512*100; subplot(2,2,3) plot(t,s) xlabel('t/s');ylabel('幅度'); title('已调信号'

36、;) axis(0,1,-10,10); subplot(2,2,4) plot(fw2,yw2) xlabel('频率/HZ');title('已调信号的频谱') grid; %*&&&&%*&&&&& %DSB信号解调程序 t=0:0.001:1; A=3; A0=3;Ac=4;m=A0*sin(10*pi*t)+A0*sin(20*pi*t); c=Ac*cos(50*pi*t); s=m.*c; %已调信号 sa=awgn(s,10); S=sa.*c; % 滤波器的设计 Rp=0.

37、1; %通带最大衰减为0.1dB Rs=40; %阻带最小衰减为40dB Wp=5/100; %通带截止频率 Ws=10/100; %阻带起始频率 n,Wn = ellipord(Wp,Ws,Rp,Rs) b,a = ellip(n,Rp,Rs,Wn); Sh=filter(b,a,S); %对信号进行滤波 figure(2) plot(t,m,t,Sh*2/(Ac*Ac) legend('原调制信号','解调后的调制信号');title('调制信号与解调信号对比') figure(3) yk1=fft(S,512); yw1 = 2*pi*ab

38、s(fftshift(yk1); fw1=-256:255/512; yk2=fft(Sh,512); yw2 = 2*pi*abs(fftshift(yk2); fw2=-256:255/512; subplot(2,1,1) plot(fw1,yw1) legend('滤波前的频谱图') subplot(2,1,2) plot(fw2,yw2) legend('滤波后的频谱图') 附录2% %=GUI界面设计程序=xugege%function varargout = GUI_design(varargin)% GUI_DESIGN MATLAB code

39、for GUI_design.fig% GUI_DESIGN, by itself, creates a new GUI_DESIGN or raises the existing% singleton*.% H = GUI_DESIGN returns the handle to a new GUI_DESIGN or the handle to% the existing singleton*.% GUI_DESIGN('CALLBACK',hObject,eventData,handles,.) calls the local% function named CALLBA

40、CK in GUI_DESIGN.M with the given input arguments.% GUI_DESIGN('Property','Value',.) creates a new GUI_DESIGN or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before GUI_design_OpeningFcn gets called. An% unrecognized property n

41、ame or invalid value makes property application% stop. All inputs are passed to GUI_design_OpeningFcn via varargin.% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify

42、the response to help GUI_design % Last Modified by GUIDE v2.5 22-Jun-2015 19:38:23 % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, . 'gui_Singleton', gui_Singleton, . 'gui_OpeningFcn', GUI_design_OpeningFcn, . 'gui_Outp

43、utFcn', GUI_design_OutputFcn, . 'gui_LayoutFcn', , . 'gui_Callback', );if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initial

44、ization code - DO NOT EDIT % - Executes just before GUI_design is made visible.function GUI_design_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles

45、structure with handles and user data (see GUIDATA)% varargin command line arguments to GUI_design (see VARARGIN) % Choose default command line output for GUI_designhandles.output = hObject; % Update handles structureguidata(hObject, handles); % UIWAIT makes GUI_design wait for user response (see UIR

46、ESUME)% uiwait(handles.figure1); % - Outputs from this function are returned to the command line.function varargout = GUI_design_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a

47、 future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % - Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbut

48、ton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.axes1) cla; global A0; %调制信号振幅global t ; % 抽样时间global U0; %调制信号t=0:0.001:1; U0=A0*sin(2*pi*5*t);plot(t,U0) xlabel('t/s');ylabel('幅度

49、9;); title('调制信号波形') ;yk0=fft(U0,512); yw0=2*pi*abs(fftshift(yk0); fw0=-256:255/512*1000; axes(handles.axes2) cla; plot(fw0,yw0); xlabel('频率/Hz') ; title('调制信号的频谱') ; % - Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObje

50、ct handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.axes1) cla; global Ac; %载波信号幅度global fc; %载波频率 global t ; % 抽样时间global Uc; %载波信号t=0:0.001:1; Uc=Ac*cos(2*pi*fc*t);plot(t,Uc) x

51、label('t/s');ylabel('幅度'); title('载波信号波形'); ykc=fft(Uc,512); ywc=2*pi*abs(fftshift(ykc); fwc=-256:255/512*1000; axes(handles.axes2) cla; plot(fwc,ywc) xlabel('频率/Hz') ; title('载波信号的频谱') ; % - Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)%

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论