function hh N=800; M=600; A = 0; F = 0; S = 0; Fi=0; Fs=100; Ts=1/Fs; t=[-6:Ts:6];handles.fig=figure();mpos=get(handles.fig,'position');set(handles.fig,'units','pixel');set(handles.fig,'position',[mpos(3)-120 mpos(4)-250 N M]);handles.axes1=axes();set(handles.axes1,'units','pixel');handles.axes1=subplot(3,1,1);handles.axes2=axes();set(handles.axes2,'units','pixel');handles.axes2=subplot(3,1,2);handles.axes3=axes();set(handles.axes3,'units','pixel');handles.axes3=subplot(3,1,3);handles.filter1=uicontrol('style','radiobutton');set(handles.filter1,'string','low pass');set(handles.filter1,'position',[100 200 80 20]);handles.filter2=uicontrol('style','radiobutton');set(handles.filter2,'string','highpass');set(handles.filter2,'position',[100 180 80 20]);handles.filter3=uicontrol('style','radiobutton');set(handles.filter3,'string','band pass');set(handles.filter3,'position',[100 160 80 20]);handles.edit1=uicontrol('style','edit');set(handles.edit1,'position',[N-360 0 120 20]);set(handles.edit1,'string','A');set(handles.edit1,'horizontalalignment','center');set(handles.filter1,'callback',{@mycallback, handles, 1});set(handles.filter2,'callback',{@mycallback, handles, 2});set(handles.filter3,'callback',{@mycallback, handles, 3});handles.edit1 = uicontrol('style','edit');set(handles.edit1,'position',[N-360 0 120 20]);set(handles.edit1,'string','A');set(handles.edit1,'horizontalalignment','center');handles.edit2 = uicontrol('style','edit');set(handles.edit2,'position',[N-240 0 120 20]);set(handles.edit2,'string','F');set(handles.edit2,'horizontalalignment','center');set(handles.edit1, 'callback', @edit_callback1);set(handles.edit2, 'callback', @edit_callback2);function edit_callback1(src, event_data) A = str2double( get(src, 'String') );endfunction edit_callback2(src, event_data) F = str2double( get(src, 'String') ); S=A*cos(2*pi*F*t); plot(handles.axes1, t, S); endfunction mycallback(gcf, event_data, handles, filter_num)switch filter_num case 1 set(handles.filter1,'value',1); set(handles.filter2,'value',0); set(handles.filter3,'value',0); Fi=rectpuls(t/4); plot(handles.axes2,t,Fi); axis(handles.axes2, [-6 6 0.01 2]); xlabel(handles.axes2,'frequency(hz)'); ylabel(handles.axes2,'Filter'); title(handles.axes2,'Low Pass Filter impulse'); plot(handles.axes3, t, (Fi*S)); case 2 set(handles.filter1,'value',0); set(handles.filter2,'value',1); set(handles.filter3,'value',0); Fi=1*(t>3)+1*(t<(-3)); plot(handles.axes2,t,Fi); axis(handles.axes2, [-6 6 0.01 2]); xlabel(handles.axes2,'frequency(hz)'); ylabel(handles.axes2,'Filter'); title(handles.axes2,'High Pass Filter impulse'); plot(handles.axes3, t,(Fi*S)); case 3 set(handles.filter1,'value',0); set(handles.filter2,'value',0); set(handles.filter3,'value',1); Fi=1*(t>2&t<4)+1*(t<(-2)&t>-4); plot(handles.axes2,t,Fi); axis(handles.axes2, [-6 6 0.01 2]); xlabel(handles.axes2, 'frequency(hz)'); ylabel(handles.axes2,'Filter'); title(handles.axes2, 'Band Pass Filter frequency'); plot(handles.axes3, t, (Fi*S)); end end end
please one thing
why not work
plot(handles.axes3, t, (Fi*S));
Best Answer