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

📄 fm.m

📁 FM 的仿真程序
💻 M
字号:
clc; clear;
t0=-0.1; t1=0.1; %调制信号的时域范围 
fs=1000; ts=1/fs; %采样率
t=t0:ts:t1;
m=sinc(100*t); %调制信号,fm=50;
fc=300; %载频
x=cos(2*pi*fc*t); %载波信号
kf=100; %偏差常数
u=GetFMSignal(m,t0,t1,ts,fc,kf); %已调制信号
%画调制信号和已调制信号的波形
subplot(3,2,1);plot(t,m);title('基带信号');
subplot(3,2,2);plot(t,u);title('已调制信号');

df=0.25; %FFT时的频率分辨率
f=[0:df:df*(length(t)-1)]-fs/2; %与t对应的频率向量
[M,m_new,df_new_m]=GetFFT(m,t0,t1,ts,df);
[U,u_new,df_new_u]=GetFFT(u,t0,t1,ts,df);
%FFT变换后,对两个频率向量重新赋值
f1=[0:df_new_m:df_new_m*(length(m_new)-1)]-fs/2;
f2=[0:df_new_u:df_new_u*(length(u_new)-1)]-fs/2;
subplot(3,2,3);plot(f1,abs(fftshift(M)));xlabel('基带信号频谱');
subplot(3,2,4);plot(f2,abs(fftshift(U)));xlabel('已调制信号频谱');

phase=GetDEM(u,t0,t1,ts,fc); %解调,得到相角
phase_new=unwrap(phase); %对相角平滑处理
m_dem=1/(2*pi*kf)*diff(phase_new);
m_dem_new=[m_dem,0]; %求微分后少了一个点,补0
subplot(3,2,5);plot(t,m);xlabel('原基带信号');
subplot(3,2,6);plot(t,m_dem_new);xlabel('解调后基带信号');

⌨️ 快捷键说明

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