【信号处理】频谱分析仪含Matlab源码
【信号处理】频谱分析仪含Matlab源码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
1.在matlab中运行ch4.m文件可进入GUI界面
2.读入WAV文件输入方式需要将*.wav格式文件放置在 “...频谱分析仪” 根目录下,再在GUI界面文件名输入栏中输入 “XXX.wav”
再 “打开文件” 按键,即可打开wav文件。 对于多声道文件,可选择需要读入的声道,默认为读入1声道。
3.在每次进行时域分析和频域分析之前,请对分析点的数目进行核对,如果分析点数超过了采样点数,
可通过勾选 “分析所有点”选择框 进行调整即可。
4.时程曲线下面的两个滚轴,上面的滚轴为比例调整滚轴,可调整图像显示的比例;下面的滚轴为横坐标平移滚轴,可调整x轴的显示范围;
5.右下角的滚轴是五条谱曲线的比例调整滚轴。
6.界面退出请点击右上角红色关闭按钮;
2 部分代码
function varargout = ch4(varargin)
gui_Singleton =
1
;
gui_State = struct(
’gui_Name’
, mfilename, ...
’gui_Singleton’
, gui_Singleton, ...
’gui_OpeningFcn’
, @ch4_OpeningFcn, ...
’gui_OutputFcn’
, @ch4_OutputFcn, ...
’gui_LayoutFcn’
, [] , ...
’gui_Callback’
, []);
if
nargin && ischar(varargin{
1
})
gui_State.gui_Callback = str2func(varargin{
1
});
end
function channel_Callback(hObject, eventdata, handles)
% hObject handle to channel (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 channel as text
% str2double(get(hObject,
’String’
)) returns contents of channel as a double
% --- Executes during object creation, after setting all properties.
function channel_CreateFcn(hObject, eventdata, handles)
% hObject handle to channel (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
% --- Executes on selection change
in
wavetype.
function wavetype_Callback(hObject, eventdata, handles)
% hObject handle to wavetype (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 wavetype contents as cell array
% contents{get(hObject,
’Value’
)} returns selected item from wavetype
% --- Executes during object creation, after setting all properties.
function wavetype_CreateFcn(hObject, eventdata, handles)
% hObject handle to wavetype (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 during object deletion, before destroying properties.
function add_DeleteFcn(hObject, eventdata, handles)
% hObject handle to add (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
% --- Executes on slider movement.
function xmove_Callback(hObject, eventdata, handles)
% hObject handle to xmove (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,
’Value’
) returns position of slider
% get(hObject,
’Min’
)
and
get(hObject,
’Max’
) to determine range of slider
val=get(handles.scale,
’value’
);
val=
10
^(val*
5
+
1
);
x=get(hObject,
’Value’
)*str2double(get(handles.samplenum,
’String’
));
axis(handles.time,[x val+x min(handles.y) max(handles.y)]);
% --- Executes during object creation, after setting all properties.
function xmove_CreateFcn(hObject, eventdata, handles)
% hObject handle to xmove (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles empty - handles
not
created
until
after all CreateFcns called
%
Hint:
slider controls usually have a light gray background, change
%
’usewhitebg’
to
0
to use default. See ISPC
and
COMPUTER.
usewhitebg =
1
;
if
usewhitebg
set(hObject,
’BackgroundColor’
,[.
9
.
9
.
9
]);
else
set(hObject,
’BackgroundColor’
,get(
0
,
’defaultUicontrolBackgroundColor’
));
end
% --- Executes on button press
in
analyseall.
function analyseall_Callback(hObject, eventdata, handles)
% hObject handle to analyseall (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
if
get(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.samplenum,
’String’
),
’Enable’
,
’off’
);
end
function outt_Callback(hObject, eventdata, handles)
% hObject handle to outt (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 outt as text
% str2double(get(hObject,
’String’
)) returns contents of outt as a double
% --- Executes during object creation, after setting all properties.
function outt_CreateFcn(hObject, eventdata, handles)
% hObject handle to outt (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 foutt_Callback(hObject, eventdata, handles)
% hObject handle to foutt (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 foutt as text
% str2double(get(hObject,
’String’
)) returns contents of foutt as a double
% --- Executes during object creation, after setting all properties.
function foutt_CreateFcn(hObject, eventdata, handles)
% hObject handle to foutt (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
% --- Executes
when
selected object is changed
in
uipanel9.
function uipanel9_SelectionChangeFcn(hObject, eventdata, handles)
% hObject handle to the selected object
in
uipanel9
% eventdata structure with the following fields (see UIBUTTONGROUP)
%
EventName:
string
’SelectionChanged’
(read only)
%
OldValue:
handle of the previously selected object
or
empty
if
none was selected
%
NewValue:
handle of the currently selected object
% handles structure with handles
and
user data (see GUIDATA)
switch get(hObject,
’Tag’
)
case
’soundcard’
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’
);
case
’WAVfile’
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’
);
case
’generator’
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’
);
end
function edit27_Callback(hObject, eventdata, handles)
% hObject handle to filename (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 filename as text
% str2double(get(hObject,
’String’
)) returns contents of filename as a double
% --- Executes during object creation, after setting all properties.
function edit27_CreateFcn(hObject, eventdata, handles)
% hObject handle to filename (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
function edit28_Callback(hObject, eventdata, handles)
% hObject handle to freq (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 freq as text
% str2double(get(hObject,
’String’
)) returns contents of freq as a double
% --- Executes during object creation, after setting all properties.
function edit28_CreateFcn(hObject, eventdata, handles)
% hObject handle to freq (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
function edit29_Callback(hObject, eventdata, handles)
% hObject handle to amp (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 as text
% str2double(get(hObject,
’String’
)) returns contents of amp as a double
% --- Executes during object creation, after setting all properties.
function edit29_CreateFcn(hObject, eventdata, handles)
% hObject handle to amp (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
function edit30_Callback(hObject, eventdata, handles)
% hObject handle to phase (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 phase as text
% str2double(get(hObject,
’String’
)) returns contents of phase as a double
% --- Executes during object creation, after setting all properties.
function edit30_CreateFcn(hObject, eventdata, handles)
% hObject handle to phase (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
function edit31_Callback(hObject, eventdata, handles)
% hObject handle to recordtime (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 recordtime as text
% str2double(get(hObject,
’String’
)) returns contents of recordtime as a double
% --- Executes during object creation, after setting all properties.
function edit31_CreateFcn(hObject, eventdata, handles)
% hObject handle to recordtime (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
% --- Executes on button press
in
startrecord.
function pushbutton8_Callback(hObject, eventdata, handles)
% hObject handle to startrecord (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
fileopen.
function pushbutton9_Callback(hObject, eventdata, handles)
% hObject handle to fileopen (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
gensig.
function pushbutton10_Callback(hObject, eventdata, handles)
% hObject handle to gensig (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
function edit32_Callback(hObject, eventdata, handles)
% hObject handle to channel (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 channel as text
% str2double(get(hObject,
’String’
)) returns contents of channel as a double
% --- Executes during object creation, after setting all properties.
function edit32_CreateFcn(hObject, eventdata, handles)
% hObject handle to channel (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
% --- Executes on selection change
in
wavetype.
function popupmenu2_Callback(hObject, eventdata, handles)
% hObject handle to wavetype (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
%
Hints:
contents = cellstr(get(hObject,
’String’
)) returns wavetype contents as cell array
% contents{get(hObject,
’Value’
)} returns selected item from wavetype
% --- Executes during object creation, after setting all properties.
function popupmenu2_CreateFcn(hObject, eventdata, handles)
% hObject handle to wavetype (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 && isequal(get(hObject,
’BackgroundColor’
), get(
0
,
’defaultUicontrolBackgroundColor’
))
set(hObject,
’BackgroundColor’
,
’white’
);
end
% --- Executes on button press
in
add.
function checkbox3_Callback(hObject, eventdata, handles)
% hObject handle to add (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
%
Hint:
get(hObject,
’Value’
) returns toggle state of add
% --- Executes on button press
in
add.
function add_Callback(hObject, eventdata, handles)
% hObject handle to add (see GCBO)
% eventdata reserved - to be
defined
in
a future version of MATLAB
% handles structure with handles
and
user data (see GUIDATA)
%
Hint:
get(hObject,
’Value’
) returns toggle state of add
3 仿真结果
4 参考文献
[1]陈华丽. "基于LabVIEW和MATLAB的频谱分析仪设计." 计量与测试技术 34.9(2007):2.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
