哈工程数字信号处理实验报告8.docx
- 文档编号:4403675
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:21
- 大小:1.73MB
哈工程数字信号处理实验报告8.docx
《哈工程数字信号处理实验报告8.docx》由会员分享,可在线阅读,更多相关《哈工程数字信号处理实验报告8.docx(21页珍藏版)》请在冰点文库上搜索。
哈工程数字信号处理实验报告8
数字信号处理实验
实验八:
音频频谱分析仪设计与实现
班级:
姓名:
学号:
指导老师:
2010年11月
二.实验内容
functionvarargout=untitled(varargin)
gui_Singleton=1;
gui_State=struct('gui_Name',mfilename,...
'gui_Singleton',gui_Singleton,...
'gui_OpeningFcn',@untitled_OpeningFcn,...
'gui_OutputFcn',@untitled_OutputFcn,...
'gui_LayoutFcn',[],...
'gui_Callback',[]);
ifnargin&&ischar(varargin{1})
gui_State.gui_Callback=str2func(varargin{1});
end
ifnargout
[varargout{1:
nargout}]=gui_mainfcn(gui_State,varargin{:
});
else
gui_mainfcn(gui_State,varargin{:
});
end
functionuntitled_OpeningFcn(hObject,eventdata,handles,varargin)
handles.inputtype=0;
xlabel(handles.plot1,'freqency(Hz)');xlabel(handles.plot2,'freqency(Hz)');
xlabel(handles.plot3,'freqency(Hz)');xlabel(handles.plot4,'freqency(Hz)');
xlabel(handles.plot5,'freqency(Hz)');
ylabel(handles.plot1,'amplitude');ylabel(handles.plot2,'phase(rad)');
ylabel(handles.plot3,'real');ylabel(handles.plot4,'Imaginary');
ylabel(handles.plot5,'power');
handles.output=hObject;
guidata(hObject,handles);
functionvarargout=untitled_OutputFcn(hObject,eventdata,handles)
varargout{1}=handles.output;
functionsampledpoint_Callback(hObject,eventdata,handles)
functionsampledpoint_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionedit1_CreateFcn(hObject,eventdata,handles)
functionedit2_CreateFcn(hObject,eventdata,handles)
functionfs_Callback(hObject,eventdata,handles)
functionfs_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionsoundcard_Callback(hObject,eventdata,handles)
set(findobj('Tag','recordtime'),'enable','on');
h=findobj('Tag','filename');
set(h,'enable','off');
h=findobj('Tag','freq');
set(h,'enable','off');
h=findobj('Tag','amp');
set(h,'enable','off');
h=findobj('Tag','phase');
set(h,'enable','off');
set(handles.channel,'enable','off');
set(handles.fileopen,'enable','off');
set(handles.gensig,'enable','off');
set(handles.wavetype,'enable','off');
set(handles.add,'enable','off');
set(handles.startrecord,'enable','on');
set(handles.soundcard,'value',1);set(handles.WAVfile,'value',0);set(handles.generator,'value',0);
functionWAVfile_Callback(hObject,eventdata,handles)
h=findobj('Tag','filename');
set(h,'enable','on');
h=findobj('Tag','freq');
set(h,'enable','off');
h=findobj('Tag','amp');
set(h,'enable','off');
h=findobj('Tag','phase');
set(h,'enable','off');
set(findobj('Tag','recordtime'),'enable','off');
set(handles.channel,'enable','on');
set(handles.fileopen,'enable','on');
set(handles.gensig,'enable','off');
set(handles.wavetype,'enable','off');
set(handles.add,'enable','off');
set(handles.startrecord,'enable','off')
set(handles.soundcard,'value',0);set(handles.WAVfile,'value',1);set(handles.generator,'value',0);
functiongenerator_Callback(hObject,eventdata,handles)
h=findobj('Tag','filename');
set(h,'enable','off');
h=findobj('Tag','freq');
set(h,'enable','on');
h=findobj('Tag','amp');
set(h,'enable','on');
h=findobj('Tag','phase');
set(h,'enable','on');
set(findobj('Tag','recordtime'),'enable','off');
set(handles.channel,'enable','off');
set(handles.fileopen,'enable','off');
set(handles.gensig,'enable','on');
set(handles.wavetype,'enable','on');
set(handles.add,'enable','on');
set(handles.startrecord,'enable','off');
set(handles.soundcard,'value',0);
set(handles.WAVfile,'value',0);
set(handles.generator,'value',1);
functionpopupmenu2_Callback(hObject,eventdata,handles)
functionpopupmenu2_CreateFcn(hObject,eventdata,handles)
ifispc&&isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
functionrecordtime_Callback(hObject,eventdata,handles)
functionrecordtime_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionstartrecord_Callback(hObject,eventdata,handles)
Fs=str2double(get(findobj('Tag','fs'),'String'));
handles.y=wavrecord(str2double(get(findobj('Tag','recordtime'),'String'))*Fs,Fs,'int16');
handles.inputtype=1;
guidata(hObject,handles);
plot(handles.time,handles.y);
title('WAVE');
ysize=size(handles.y)
set(handles.sampledpoint,'String',num2str(ysize
(1)));
functionfilename_Callback(hObject,eventdata,handles)
functionfilename_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionwavetype_Callback(hObject,eventdata,handles)
functionwavetype_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionchannel_Callback(hObject,eventdata,handles)
functionchannel_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionfileopen_Callback(hObject,eventdata,handles)
temp=wavread(get(findobj('Tag','filename'),'String'));
channel=str2double(get(handles.channel,'String'));
handles.y=temp(:
channel);
handles.inputtype=2;
guidata(hObject,handles);
plot(handles.time,handles.y);
title('WAVE');
ysize=size(handles.y)
set(handles.sampledpoint,'String',num2str(ysize
(1)));
functiongensig_Callback(hObject,eventdata,handles)
Fs=str2double(get(findobj('Tag','fs'),'String'));
N=str2double(get(findobj('Tag','sampledpoint'),'String'));
x=linspace(0,N/Fs,N);
soundtype=get(handles.wavetype,'Value');
frequency=str2double(get(handles.freq,'String'));
amp=str2double(get(handles.amp,'String'));
phase=str2double(get(handles.phase,'String'));
switchsoundtype
case1
y=amp*sin(2*pi*x*frequency+phase);
case2
y=amp*sign(sin(2*pi*x*frequency+phase));
case3
y=amp*sawtooth(2*pi*x*frequency+phase,0.5);
case4
y=amp*sawtooth(2*pi*x*frequency+phase);
case5
y=amp*(2*rand(size(x))-1);
otherwise
errordlg('Illegalwavetype','Chooseerrer');
end
ifget(handles.add,'Value')==0.0
handles.y=y;
else
handles.y=handles.y+y;
end
handles.inputtype=3;
guidata(hObject,handles);
plot(handles.time,handles.y);
title(handles.time,'波形');
xlabel(handles.time,'时间');ylabel(handles.time,'幅度');
axis([0N-str2double(get(handles.amp,'String'))str2double(get(handles.amp,'String'))]);
functionadd_Callback(hObject,eventdata,handles)
functionadd_DeleteFcn(hObject,eventdata,handles)
functionfreq_Callback(hObject,eventdata,handles)
functionfreq_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionamp_Callback(hObject,eventdata,handles)
functionamp_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionphase_Callback(hObject,eventdata,handles)
functionphase_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionpointfrom_Callback(hObject,eventdata,handles)
functionpointfrom_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionpointto_Callback(hObject,eventdata,handles)
functionpointto_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionanalyseall_Callback(hObject,eventdata,handles)
ifget(hObject,'Value')==0.0
set(handles.pointfrom,'Enable','on');
set(handles.pointto,'Enable','on');
else
set(handles.pointfrom,'String','1','Enable','off');
set(handles.pointto,'String',get(handles.sampledpoint,'String'),'Enable','off');
end
functioncircle_Callback(hObject,eventdata,handles)
functioncircle_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutfreq_Callback(hObject,eventdata,handles)
functionoutfreq_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutamp_Callback(hObject,eventdata,handles)
functionoutamp_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutphase_Callback(hObject,eventdata,handles)
functionoutphase_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutpeak_Callback(hObject,eventdata,handles)
functionoutpeak_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutmean_Callback(hObject,eventdata,handles)
functionoutmean_CreateFcn(hObject,eventdata,handles)
ifispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
functionoutmeansquare_Callback(hObject,eventdata,handles)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程 数字信号 处理 实验 报告