【数字信号处理】基于matlab GUI数字信号处理系统【含Matlab源码 1088期】
2021/7/3 14:51:16
本文主要是介绍【数字信号处理】基于matlab GUI数字信号处理系统【含Matlab源码 1088期】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、简介
基于matlab GUI数字信号处理系统
二、源代码
function varargout = main(varargin) % MAIN M-file for main.fig % MAIN, by itself, creates a new MAIN or raises the existing % singleton*. % % H = MAIN returns the handle to a new MAIN or the handle to % the existing singleton*. % % MAIN('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in MAIN.M with the given input arguments. % % MAIN('Property','Value',...) creates a new MAIN or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before main_OpeningFunction gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to main_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help main % Last Modified by GUIDE v2.5 08-Jul-2020 22:07:09 % Begin initialization code - DO NOT EDIT global y; global z; global mix; global t; global amp; global fre; global nak; gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @main_OpeningFcn, ... 'gui_OutputFcn', @main_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin & isstr(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before main is made visible. function main_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to main (see VARARGIN) % Choose default command line output for main handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes main wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = main_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; % --- Executes during object creation, after setting all properties. function amp_edit_CreateFcn(hObject, eventdata, handles) % hObject handle to amp_edit (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit 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 function amp_edit_Callback(hObject, eventdata, handles) global amp; amp=str2num(get(handles.amp_edit,'String')); % hObject handle to amp_edit (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 amp_edit as text % str2double(get(hObject,'String')) returns contents of amp_edit as a double % --- Executes during object creation, after setting all properties. function fre_edit_CreateFcn(hObject, eventdata, handles) % hObject handle to fre_edit (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit 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 function fre_edit_Callback(hObject, eventdata, handles) global fre; fre=str2num(get(handles.fre_edit,'String')); % hObject handle to fre_edit (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 fre_edit as text % str2double(get(hObject,'String')) returns contents of fre_edit as a double % --- Executes on button press in sin_button. function sin_button_Callback(hObject, eventdata, handles) global y; global t; global amp; global fre; global nak; amp=str2num(get(handles.amp_edit,'String')); fre=str2num(get(handles.fre_edit,'String')); nak=50*fre; t=0:1/nak:15; y=zeros(length(t),length(amp),length(fre)); cla; for k=1:length(amp) for j=1:length(fre) for i=1:length(t) y(i,k,j)=amp(k)*sin(2*pi*fre(j).*t(i)); end findobj('tag','sig_axes'); plot(t, y(:,k,j),'parent',handles.sig_axes); end end % hObject handle to sin_button (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % --- Executes on button press in tri_button. function tri_button_Callback(hObject, eventdata, handles) global y; global t; global amp; global fre; global nak; amp=str2num(get(handles.amp_edit,'String')); fre=str2num(get(handles.fre_edit,'String')); nak=50*fre; t=0:1/nak:15; y=zeros(length(t),length(amp),length(fre)); cla; for k=1:length(amp) for j=1:length(fre) pe=1/fre(j); NUM=15*fre(j); for i=1:length(t) for l=1:NUM %for l=0:(15*fre(j)-1) % if (t(i)>=l/fre(j) && t(i)<=(l/fre(j)+1/(2*fre(j)))) if (t(i)>=(l-1)*pe && t(i)<=(l-1)*pe+pe/2) y(i,k,j)=2*amp(k)/pe*t(i)-2*amp(k)*(l-1); %y(i)=amp(k)*2*fre(j)*t(i)-2*l*amp(k); else if (t(i)<=l*pe && t(i)>=(l-1)*pe+pe/2) y(i,k,j)=-2*amp(k)/pe*t(i)+2*amp(k)*l; %y(i)=-amp(k)*2*fre(j)*t(i)+2*l*amp(k); % end end end end end % y(:,k,j)=amp(k)*sin(2*pi*fre(j).*t); findobj('tag','sig_axes'); plot(t, 2*y(:,k,j)-amp,'parent',handles.sig_axes); end end
三、运行结果
四、备注
版本:2014a
这篇关于【数字信号处理】基于matlab GUI数字信号处理系统【含Matlab源码 1088期】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南