📄 p161_01.m
字号:
fs=1024;
t=(0:511)/fs;
fc=100;
fm=10;
fd=50;
Am=1;
Ac=2;
a=0.5;
beta=fd*Am/fm;
c=Ac*cos(2*pi*fc*t); %carrier signal
m=Am*cos(2*pi*fm*t); %message signal
subplot(521);plot(t,m,'r-');xlabel('time(s)');ylabel('ampitude');title('message signal');
subplot(522);plot(t,c,'r-');xlabel('time(s)');ylabel('ampitude');title('carrier signal');
am=(1+a*m).*c; %AM signal generate
subplot(523);plot(t,am,'r-');axis([0 0.5 -3 3]);xlabel('frequency(Hz)');ylabel('ampitude');title('AM Signal');
freq=(0:length(am)-1)*(fs)/length(am);
X=fft(am)/length(am);
subplot(524);plot(freq,abs(X));xlabel('frequency(Hz)');title('FFT of AM');%fft of AM
dsb=m.*c; %DSB moludation
subplot(525);plot(t,dsb,'r-');xlabel('time(s)');ylabel('ampitude');title('DSB signal');
fm=Ac*cos(2*pi*fc*t+beta*sin(2*pi*fm*t)); %FM signal generate
subplot(526);plot(t,fm,'r-');xlabel('frequency(Hz)');ylabel('ampitude');title('FM Signal');
freqfm=(0:length(fm)-1)*(fs)/length(fm);
X=fft(fm)/length(fm);
subplot(527);plot(freqfm,abs(X));xlabel('frequency(Hz)'); title('FFT of FM');% fft of FM
for i=1:length(am);
if am(i)<0, am(i)=0; end
end
am=am-mean(am);
B=20;
N=5;
[Cb,Ca]=butter(N,B/(fs/2));
[H,w]=freqz(Cb,Ca);
f=w/pi*fs/2;
y=filter(Cb,Ca,am);
subplot(528);plot(f,abs(H),'r-');axis([0 50 0 1]);xlabel('time(s)');ylabel('ampitude');title('LPF');
subplot(529);plot(t,y,'r-');xlabel('time(s)');ylabel('ampitude');title('Output signal');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -