⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chebyshev2_real.m

📁 自己编写的信号产生和处理软件
💻 M
字号:
function varargout = chebyshev2_real(varargin)% CHEBYSHEV2_REAL Application M-file for chebyshev2_real.fig%    FIG = CHEBYSHEV2_REAL launch chebyshev2_real GUI.%    CHEBYSHEV2_REAL('callback_name', ...) invoke the named callback.% Last Modified by GUIDE v2.0 06-Sep-2005 10:56:05if nargin == 0  % LAUNCH GUI	fig = openfig(mfilename,'reuse');	% Use system color scheme for figure:	set(fig,'Color',get(0,'defaultUicontrolBackgroundColor'));	% Generate a structure of handles to pass to callbacks, and store it. 	handles = guihandles(fig);	guidata(fig, handles);	if nargout > 0		varargout{1} = fig;	endelseif ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK	try		if (nargout)			[varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard		else			feval(varargin{:}); % FEVAL switchyard		end	catch		disp(lasterr);	endend%| ABOUT CALLBACKS:%| GUIDE automatically appends subfunction prototypes to this file, and %| sets objects' callback properties to call them through the FEVAL %| switchyard above. This comment describes that mechanism.%|%| Each callback subfunction declaration has the following form:%| <SUBFUNCTION_NAME>(H, EVENTDATA, HANDLES, VARARGIN)%|%| The subfunction name is composed using the object's Tag and the %| callback type separated by '_', e.g. 'slider2_Callback',%| 'figure1_CloseRequestFcn', 'axis1_ButtondownFcn'.%|%| H is the callback object's handle (obtained using GCBO).%|%| EVENTDATA is empty, but reserved for future use.%|%| HANDLES is a structure containing handles of components in GUI using%| tags as fieldnames, e.g. handles.figure1, handles.slider2. This%| structure is created at GUI startup using GUIHANDLES and stored in%| the figure's application data using GUIDATA. A copy of the structure%| is passed to each callback.  You can store additional information in%| this structure at GUI startup, and you can change the structure%| during callbacks.  Call guidata(h, handles) after changing your%| copy to replace the stored original so that subsequent callbacks see%| the updates. Type "help guihandles" and "help guidata" for more%| information.%|%| VARARGIN contains any extra arguments you have passed to the%| callback. Specify the extra arguments by editing the callback%| property in the inspector. By default, GUIDE sets the property to:%| <MFILENAME>('<SUBFUNCTION_NAME>', gcbo, [], guidata(gcbo))%| Add any extra arguments after the last argument, before the final%| closing parenthesis.% --------------------------------------------------------------------function varargout = pushbutton2_Callback(h, eventdata, handles, varargin)close all;index2;% --------------------------------------------------------------------function varargout = pushbutton3_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = plot_button_Callback(h, eventdata, handles, varargin)global select_signal;global t;% Calculate datay = fft(select_signal,512);m = y.*conj(y)/512;a = angle(y);f = 1000*(0:256)/512;% Create time plotaxes(handles.time_axes)plot(t,select_signal)ylabel('Time-domain')set(handles.time_axes,'XMinorTick','on')grid on% Create magnitude plotaxes(handles.magnitude_axes)plot(f,m(1:257))ylabel('Magnitude');set(handles.magnitude_axes,'XMinorTick','on')grid on% Create phase plotaxes(handles.phase_axes)plot(f,a(1:257))ylabel('Phase(degree)');set(handles.phase_axes,'XMinorTick','on')grid on% --------------------------------------------------------------------function varargout = time_axes_CreateFcn(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = plot_button_CreateFcn(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = pushbutton2_CreateFcn(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = plot_button2_Callback(h, eventdata, handles, varargin)global select_signal;global t;Wp=str2double(get(handles.wp_input,'String'));Ws=str2double(get(handles.ws_input,'String'));Rp=str2double(get(handles.rp_input,'String'));Rs=str2double(get(handles.rs_input,'String'));sa=str2double(get(handles.sample_input,'String'));val = get(handles.pop_menu,'Value');switch val;    case 1        [N,Wn]=cheb2ord(Wp/(sa/2),Ws/(sa/2),Rp,Rs);[b,a]=cheby2(N,Rp,Wn,'high');figure(1)freqz(b,a,sa);figure(2)[h,tr]=impz(b,a,101);stem(tr,h)grid onyfilt=filter(b,a,select_signal);% Calculate datayy = fft(yfilt,512);mm = yy.*conj(yy)/512;aa = angle(yy);ff = 1000*(0:256)/512;        % Create time plotaxes(handles.filter_axes1)plot(t,yfilt)set(handles.time_axes,'XMinorTick','on')grid on% Create magnitude plotaxes(handles.filter_axes2)plot(ff,mm(1:257))set(handles.magnitude_axes,'XMinorTick','on')grid on% Create phase plotaxes(handles.filter_axes3)plot(ff,aa(1:257))set(handles.phase_axes,'XMinorTick','on')grid on    case 2                [N,Wn]=cheb2ord(Wp/(sa/2),Ws/(sa/2),Rp,Rs);[b,a]=cheby2(N,Rp,Wn,'low');figure(1)freqz(b,a,sa);figure(2)[h,tr]=impz(b,a,101);stem(tr,h)grid onyfilt=filter(b,a,select_signal);% Calculate datayy = fft(yfilt,512);mm = yy.*conj(yy)/512;aa = angle(yy);ff = 1000*(0:256)/512;        % Create time plotaxes(handles.filter_axes1)plot(t,yfilt)set(handles.time_axes,'XMinorTick','on')grid on% Create magnitude plotaxes(handles.filter_axes2)plot(ff,mm(1:257))set(handles.magnitude_axes,'XMinorTick','on')grid on% Create phase plotaxes(handles.filter_axes3)plot(ff,aa(1:257))set(handles.phase_axes,'XMinorTick','on')grid on        end% --------------------------------------------------------------------function varargout = w1_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = w2_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = sample_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = order_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = popupmenu1_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = filter_button_Callback(h, eventdata, handles, varargin)global select_signal;global t;f = 1000*(0:198)/512;c=conv(select_signal(1:100),handles.h(1:100));length(c)figure(1)plot(f,c)mag=abs(handles.h);db=10*log10(mag);axes(handles.filter_axes1)grid on% --- Executes during object creation, after setting all properties.function win_pop_CreateFcn(hObject, eventdata, handles)% hObject    handle to win_pop (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: popupmenu controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc    set(hObject,'BackgroundColor','white');else    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));end% --- Executes on selection change in win_pop.function win_pop_Callback(hObject, eventdata, handles)% hObject    handle to win_pop (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: contents = get(hObject,'String') returns win_pop contents as cell array%        contents{get(hObject,'Value')} returns selected item from win_pop% --------------------------------------------------------------------function varargout = wp_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = ws_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = fs_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = rp_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = rs_input_Callback(h, eventdata, handles, varargin)% --------------------------------------------------------------------function varargout = pushbutton7_Callback(h, eventdata, handles, varargin)close all;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -