⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 am9.m

📁 am信号的调制解调matlab的源程序 可以实现不同调制系数下的调制
💻 M
字号:
%**********编程前准备工作***********
clear;                  %清除工作空间中的所有变量
clf;                    %清除当前图形窗
%**********定义程序参数***********
Fc=30000;               %定义载波频率
Fs=100000;              %定义采样频率
ts=1/Fs;                %采样时间间隔
f0=300;                 %信号频率
t0=1/f0;                %信号周期
t=0:ts:2*t0;              %时间矢量
df=0.3;                 %频率分辨率
%**********给出信号方程***********
c=cos(2*pi*Fc*t);       %载波信号
A=0.8;                  %调制指数
m=square(2*pi*300*t,50);            %矩形波调制信号
u=c.*(1+A*m);                       %已调信号
%*********添加噪声**********
y=awgn(u,10);           %将噪声添加到已调信号中

%**********绘制波形**********
figure(1);                          %新建一个图形窗口
subplot(4,2,1);                     %将图形窗口分成3*2个子图形窗口
plot(t,m);                          %绘制二维图形,横坐标为t坐标,纵坐标为m变量
title('未调制信号');                 %添加图形标题
subplot(4,2,2);
plot(t,c);
title('载波信号');
subplot(4,2,3);
plot(t,u);
title('无噪声已调制信号');
subplot(4,2,4);
plot(t,y);
title('有噪声已调制信号');
%********包络解调*********
env=abs(Hilbert(u));                 %找出包络
dem=(env-1)/A;                       %去掉直流分量并重新缩放
subplot(4,2,5);
plot(t,dem);
title('无噪声包络解调信号');
env=abs(Hilbert(y));                 %找出包络
dem=(env-1)/A;                       %去掉直流分量并重新缩放
subplot(4,2,7);
plot(t,dem);
title('有噪声包络解调信号');
%*********相干解调*********
z=ademod(u,Fc,Fs,'amdsb_tc');        %对双边带载波幅度调制信号进行解调
dem1=(z-1)/A;                        %去掉直流分量并重新缩放
subplot(4,2,6);
plot(t,dem1);
title('无噪声相干解调信号');   
z=ademod(y,Fc,Fs,'amdsb_tc');        %对双边带载波幅度调制信号进行解调
dem1=(z-1)/A;                        %去掉直流分量并重新缩放
subplot(4,2,8);
plot(t,dem1);
title('有噪声相干解调信号');  
%*********绘制频谱图**********
[M,m,df]=fftseq(m,ts,df);            %傅里叶变换
[C,c,df]=fftseq(c,ts,df);            %傅里叶变换
[U,u,df]=fftseq(u,ts,df);            %傅里叶变换
[Y,y,df]=fftseq(y,ts,df);            %傅里叶变换
f=[0:df:df*(length(m)-1)]-Fs/2;      %频率矢量
figure(2);                           %新建一个图形窗口
subplot(2,2,1);plot(f,abs(fftshift(M)));
title('未调制信号频谱');
subplot(2,2,2);plot(f,abs(fftshift(C)));
title('载波信号频谱');
subplot(2,2,3);plot(f,abs(fftshift(U)));
title('无噪声已调信号频谱');
subplot(2,2,4);plot(f,abs(fftshift(Y)));
title('有噪声已调信号频谱');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -