matlab pm解调,[转载]频率调制和解调(FM)  相位调制(PM)

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

% (ExampleFM.m)

% This program uses triangl.m to illustrate Frequency

modulation

% and demodulation

ts=1.e-4;

t=-0.04:ts:0.04;

Ta=0.01; fc=300;

m_sig=triangl((t+0.01)/0.01)-triangl((t-0.01)/0.01);

Lfft=length(t); Lfft=2^ceil(log2(Lfft));

M_fre=fftshift(fft(m_sig,Lfft));

freqm=(-Lfft/2:Lfft/2-1)/(Lfft*ts);

B_m=100; %

Bandwidth of the signal is B_m Hz.

h=fir1(80, [B_m*ts]);

%

% kf=160*pi;

kf=260*pi;

kp=1.5*pi;

m_intg=kf*ts*cumsum(m_sig);

s_fm=cos(2*pi*fc*t+m_intg);

s_pm=cos(2*pi*fc*t+kp*m_sig);

Lfft=length(t); Lfft=2^ceil(log2(Lfft)+1);

S_fm=fftshift(fft(s_fm,Lfft));

S_pm=fftshift(fft(s_pm,Lfft));

freqs=(-Lfft/2:Lfft/2-1)/(Lfft*ts);

s_fmdem=diff([s_fm(1) s_fm])/ts/kf;

s_fmrec=s_fmdem.*(s_fmdem>0);

s_dec=filter(h,1,s_fmrec);

% Demodulation

% Using an ideal LPF with bandwidth 200 Hz.

Trange=[-0.04 0.04 -1.2 1.2];

figure(1)

subplot(211);m1=plot(t,m_sig);

axis(Trange); set(m1,'Linewidth',2);

xlabel('{it t} (sec)'); ylabel('{it m}({it t})');

title('Message signal');

subplot(212);m2=plot(t,s_dec);

set(m2,'Linewidth',2);

xlabel('{it t} (sec)'); ylabel('{it m}_d{it t})');

title('demodulated FM signal');

figure(2)

subplot(211);td1=plot(t,s_fm);

axis(Trange); set(td1,'Linewidth',2);

xlabel('{it t} (sec)'); ylabel('{it s}_{rm FM}({it t})');

title('FM signal');

subplot(212);td2=plot(t,s_pm);

axis(Trange);set(td2,'Linewidth',2);

xlabel('{it t} (sec)'); ylabel('{it s}_{rm PM}({it t})');

title('PM signal');

figure(3)

subplot(211);fp1=plot(t,s_fmdem);

set(fp1,'Linewidth',2);

xlabel('{it t} (sec)'); ylabel('{it d s}_{rm FM}({it

t})/dt');

title('FM derivative');

subplot(212);fp2=plot(t,s_fmrec);

set(fp2,'Linewidth',2);

xlabel('{it t} (sec)');

title('rectified FM derivative');

Frange=[-600 600 0 300];

figure(4)

subplot(211);fd1=plot(freqs,abs(S_fm));

axis(Frange); set(fd1,'Linewidth',2);

xlabel('{it f} (Hz)'); ylabel('{it S}_{rm FM}({it f})');

title('FM amplitude spectrum');

subplot(212);fd2=plot(freqs,abs(S_pm));

axis(Frange); set(fd2,'Linewidth',2);

xlabel('{it f} (Hz)'); ylabel('{it S}_{rm PM}({it f})');

title('PM amplitude spectrum');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值