📄 exp3_1.m
字号:
function varargout = Exp1_1(varargin)% EXP3_1 Application M-file for Exp1_1.fig% FIG = EXP3_1 launch Exp1_1 GUI.% EXP3_1('callback_name', ...) invoke the named callback.% Last Modified by GUIDE v2.5 13-Jun-2008 10:19:52if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); % 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 = pushbutton7_Callback(h, eventdata, handles, varargin)f = str2double(get(handles.edit1,'String'));fm = 1000;N = 1024;n = 0:N-1;x2 = n/fm;val1 = get(handles.popupmenu1,'Value');switch val1case 1 x = -0.04:0.001:0.04; y1 = sin(2*pi*f*x); y2 = sin(2*pi*f*x2);case 2 x = -0.06:0.0001:0.06; y1 = square(2*pi*f*x,50); y2 = square(2*pi*f*x2,50);case 3 x = -0.15:0.001:0.15; y1 = sawtooth(2*pi*f*x); y2 = sawtooth(2*pi*f*x2);case 4 x = [-5:0.01:5]; y1 = [(x-0) >= 0];case 5 x = [-5:0.01:5]; y1 = [(x-0) == 0];case 6 x = [-2:0.01:2]; y1 = sinc(f*pi*x);otherwise y1 = 0;endaxes(handles.axes1) % Select the proper axesplot(x,y1,'-r')set(handles.axes1,'XMinorTick','on')title('时域波形');grid ony = fft(y2,N);mag = abs(y);fs=(0:length(y)-1)'*fm/length(y);axes(handles.axes2) % Select the proper axesplot(fs,mag,'-b')axis([0 100 0 300]);set(handles.axes2,'XMinorTick','on')title('频域波形');grid on% --------------------------------------------------------------------function varargout = pushbutton8_Callback(h, eventdata, handles, varargin)closeExp3% --- Executes on selection change in popupmenu1.function popupmenu1_Callback(hObject, eventdata, handles)% hObject handle to popupmenu1 (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 popupmenu1 contents as cell array% contents{get(hObject,'Value')} returns selected item from popupmenu1function edit1_Callback(hObject, eventdata, handles)% hObject handle to edit1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit1 as text% str2double(get(hObject,'String')) returns contents of edit1 as a double
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -