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

📄 dsb.m

📁 DSB调制DSB调制DSB调制DSB调制
💻 M
字号:
fs=10000
t=-2:1/fs:2;


figure(1)
 set(1,'Position',[10,450,300,200])
                %设定窗口位置及大小 
figure(2)
 set(2,'Position',[350,450,300,200])
                %设定窗口位置及大小 
figure(3)
 set(3,'Position',[700,450,300,200])
                %设定窗口位置及大小 
figure(4)
 set(4,'Position',[10,50,300,200])
                %设定窗口位置及大小 
figure(5)
 set(5,'Position',[350,50,300,200])
                %设定窗口位置及大小 
figure(6)
 set(6,'Position',[700,50,300,200])
                %设定窗口位置及大小
figure(7)
 set(6,'Position',[350,200,300,200])
                %设定窗口位置及大小 


%将已知信号f(t)绘制出来
f=sinc(200*t);
figure(1)
plot(t,f);
xlim([-0.1,0.1]);%将横坐标限制在[-0.1,0.1]显示图象.
xlabel('时间t/s');%修饰图象.
ylabel('幅度');
title('已知信号f(t)→时域关系');
grid on;%启动图象网格显示.

%将已知信号f(t)频谱绘制出来
yk=fft(f,65536);%对信号f(t)做65536点的快速傅立叶变换.
yw=2*pi/40000*abs(fftshift(yk));%求频谱图的幅度值.fftshift的作用是将矩阵的左右调换,上下调换
%做n(n为偶数)点FFT不用FFTSHIFT时,第1点对应的模拟频率是零频,第2点是Fs/n,第n/2+1点是Fs/2,
%第n点是Fs(n-1)/n。用FFTSHIFT后,将Fs/2到Fs(n-1)/n的频点,也就是第n/2+1点到第n点搬移到第1到
%第n/2点,将第1点到第n/2点搬移到第n/2+1到第n点。所以原来的第1点(模拟频率是零频)搬移到第
%n/2+1点。n=8,就是第5点。以上所用都是MATLAB下标规则,从1开始。
fw=[-32767:32768]/65536*fs;%求频谱图的横坐标,根据这个公式fw=1/dt*(-N/2+1:N/2)/N求解得到.
figure(2)
plot(fw,yw);%画出信号f(t)的频谱图.
title('已知信号f(t)的频谱→频域关系');
xlabel('频率/Hz');
ylabel('幅度');
grid on;
xlim([-200,200]);%将横坐标限制在[-0.1,0.1]显示图象

%将已知载波信号绘制出来
yc=cos(2*pi*100*t);
figure(3)
plot(t,yc);
title('载波信号');
xlabel('时间:s');
ylabel('幅度');
grid on;
xlim([-0.03,0.03]);

%绘制已调信号
y4=sinc(t*200).*cos(2*pi*200*t);
figure(4)
plot(t,y4);
title('已调信号');
xlabel('时间:s');
ylabel('幅度');
grid on;
xlim([-0.05,0.05]);

%绘制已调信号的频谱图
yk=fft(y4,65536);%对已调信号y4做65536点的快速傅立叶变换.
yw=2*pi/40000*abs(fftshift(yk));%求频谱图的幅度值.
fw=[-32767:32768]/65536*fs;%求频谱图的横坐标,根据这个公式fw=1/dt*(-N/2+1:N/2)/N求解得到.
figure(5)
plot(fw,yw);
title('已调信号的频谱');
xlabel('频率:hz');
ylabel('幅度');
grid on;
xlim([-400,400]);

[c,lags]=xcorr(y4,200); %%DSB信号自相关函数
figure(6)             %200表示自相关函数时间т   
plot(lags/fs,c);
title('DSB信号自相关函数');
xlabel('t');
ylabel('Rxx(t)');
grid on;

y7=y4.*yc;  %%解调信号
figure(7);
plot(t,y7);
title('解调信号');
xlabel('时间:s');
ylabel('幅度');
grid on;
xlim([-0.03,0.03]);

⌨️ 快捷键说明

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