clear all; 
close all; 
 
fs=8e5;%抽样频率 
fm=20e3;%基带频率 
n=2*(6*fs/fm); 
final=(1/fs)*(n-1); 
fc=2e5; % 载波频率 
t=0:1/fs:(final); 
Fn=fs/2;%耐奎斯特频率 
 
%用正弦波产生方波 
%========================================== 
twopi_fc_t=2*pi*fm*t;  
A=1; 
phi=0; 
x = A * cos(twopi_fc_t + phi); 
 
% 方波 
am=1; 
x(x>0)=am; 
x(x<0)=-1; 
 
figure(1) 
subplot(321); 
plot(t,x); 
axis([0 2e-4 -2 2]); 
title('基带信号'); 
grid on 
 
car=sin(2*pi*fc*t);%载波 
ask=x.*car;%载波调制 
 
subplot(322); 
plot(t,ask); 
axis([0 200e-6 -2 2]); 
title('PSK信号'); 
grid on; 
 %===================================================== 
vn=0.1; 
noise=vn*(randn(size(t)));%产生噪音 
subplot(323); 
plot(t,noise); 
grid on; 
title('噪音信号'); 
axis([0 .2e-3 -1 1]); 
 
 askn=(ask+noise);%调制后加噪 
subplot(324); 
plot(t,askn); 
axis([0 200e-6 -2 2]); 
title('加噪后信号'); 
grid on; 
 
%带通滤波 
%====================================================================== 
fBW=40e3; 
f=[0:3e3:4e5]; 
w=2*pi*f/fs; 
z=exp(w*j); 
BW=2*pi*fBW/fs; 
a=.8547;%BW=2(1-a)/sqrt(a) 
p=(j^2*a^2); 
gain=.135; 
Hz=gain*(z+1).*(z-1)./(z.^2-(p)); 
 
subplot(325); 
plot(f,abs(Hz)); 
title('带通滤波器'); 
grid on; 
 
Hz(Hz==0)=10^(8);%avoid log(0) 
subplot(326); 
plot(f,20*log10(abs(Hz))); 
grid on; 
title('Receiver -3dB Filter Response'); 
axis([1e5 3e5 -3 1]); 
 
%滤波器系数 
a=[1 0 0.7305];%[1 0 p] 
b=[0.135 0 -0.135];%gain*[1 0 -1] 
faskn=filter(b,a,askn); 
figure(2) 
subplot(321); 
plot(t,faskn); 
axis([0 100e-6 -2 2]); 
title('通过带通滤波后输出'); 
grid on; 
 
 cm=faskn.*car;%解调 
subplot(322); 
plot(t,cm); 
axis([0 100e-6 -2 2]); 
grid on; 
title('通过相乘器后输出'); 
 %低通滤波器 
%================================================================== 
p=0.72; 
gain1=0.14;%gain=(1-p)/2 
Hz1=gain1*(z+1)./(z-(p)); 
 
subplot(323); 
Hz1(Hz1==0)=10^(-8);%avoid log(0) 
plot(f,20*log10(abs(Hz1))); 
grid on; 
title('LPF -3dB response'); 
axis([0 5e4 -3 1]); 
 
%滤波器系数 
a1=[1 -0.72];%(z-(p)) 
b1=[0.14 0.14];%gain*[1 1] 
 
so=filter(b1,a1,cm); 
so=so*10;%add gain 
so=so-mean(so);%removes DC component 
subplot(324);
                                    
                                    
                                        
                                            1