fm1.m

来自「这是关于模拟调制的MATLAB源代码」· M 代码 · 共 37 行

M
37
字号
% fm1.m
% 频率调制的Matlab源程序。被调信号
% 当0<t<t0/3时为+1,当t0/3<t<2*t0/3为-2,其它情况下为零.
t0=0.15;
ts=0.0005; 
fc=200; 
kf=50;
fs=1/ts;  
df=0.25;   
t=[0:ts:t0];
%% 信息信号
m=[ones(1,t0/(3*ts)),-2*ones(1,t0/(3*ts)),zeros(1,t0/(3*ts)+1)];
int_m(1)=0;
for i=1:length(t)-1  % m的积分
    int_m(i+1)=int_m(i)+m(i)*ts;
end
[M,m,df1]=fftseq(m,ts,df);
M=M/fs;
f=[0:df1:df1*(length(m)-1)]-fs/2; 
u=cos(2*pi*fc*t+2*pi*kf*int_m); % 调制信号
[U,u,df1]=fftseq(u,ts,df);
U=U/fs;
%% 画图
subplot(2,2,1);
plot(t,m(1:length(t)))
axis([0 0.15 -2.1 2.1])
title('被调信号m(t)')
subplot(2,2,2);
plot(t,u(1:length(t)))
axis([0 0.15 -2.1 2.1])
title('调制信号u(t)')
subplot(2,2,3);
plot(f,abs(fftshift(M)))
title('被调信号M(f)')
subplot(2,2,4);
plot(f,abs(fftshift(U)))
title('调制信号U(f)')

⌨️ 快捷键说明

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