www.pudn.com > dsp_lms.rar > lms_noise_cancellation.m


% filter parameters 
M=20;      % number of taps 
mu=0.05;   % step-size parameter 
e_max=500; % maximum #of epochs 
 
% constants 
pi=3.14; 
Fs=0.02;   % signal frequency 
Fn=0.05;   % noise frequency 
 
% initialize 
w=(randn(1,M)-randn(1,M))/100; 
d=zeros(1,M); 
u=zeros(1,M); 
u_out=zeros(1,e_max-M); 
f_out=zeros(1,e_max-M); 
 
% Generate desires signal and input(signal+noise) 
for t=1:M-1 
    d(t)=sin(2*pi*Fs*t); 
    u(t)=d(t)+0.5*sin(2*pi*Fn*t)+randn; 
end 
t=M; 
epoch=0; 
 
while epoch