线性调频信号matlab仿真,信号处理与系统分析的matlab实现
一简介针对数字信号处理实验课程教学情况,以巩固学生理论知识,提高实际动手能力为目的,利用矩阵实验室软件平台,对数字信号处理课程的综合性实验设计进行了探讨和研究。通过综合性实验的设计,使学生深刻地掌握信号处理的方法,培养学生的创新能力和实际动手能力。
2部分代码函数varargout=平衡器(瓦拉金)
%平衡器平衡器的矩阵实验室代码。无花果
%平衡器本身会创建一个新的平衡器或引发现有的
%单例* .
%
% H=平衡器将句柄返回给新的平衡器,或将句柄返回给
%现有的单例*。
%
% BALANCER(CALLBACK ,hObject,eventData,handles,)调用本地
%平衡器中的函数名为回电.用给定的输入参数初始化m .
%
%平衡器(属性,值,)创建新的平衡器或引发
%现有单例*。从左边开始,属性值对是
%在调用平衡器_打开cn之前应用于图形用户界面.一;一个
%无法识别的属性名或无效值使属性应用程序
%停止。所有输入都通过变长度输入宗量传递给平衡器_开放cn .
%
% *请参见指南的"工具"菜单上的图像使用者界面选项。选择图像使用者界面只允许一个
要运行的%实例(单例)”.
%
%开始初始化代码-不要编辑
GUI _ Singleton=1;
gui_State=struct(gui_Name ,mfilename,
gui_Singleton ,gui_Singleton,
gui _ OpeningFcn ,@ balancer _ OpeningFcn,
gui_OutputFcn ,@balancer_OutputFcn,
gui_LayoutFcn ,[],
gui_Callback ,[]);
if nargin ischar(varargin{1})
GUI _ state。GUI _ Callback=str 2 func(vara rgin { 1 });
目标
如果输出参数的数目
[varargout { 1:nargout }]=GUI _ mainfcn(GUI _ State,vara gin {:});
其他
gui_mainfcn(gui_State,vara rgin {:});
目标
%结束初始化代码-不要编辑
% -在平衡器可见之前执行。
函数balancer_OpeningFcn(hObject,eventdata,handles,varargin)
%此函数没有输出参数,请参见输出Fcn .
% h对象句柄到音频_开始
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
% varargin平衡器的命令行参数(请参见瓦拉金酒)
%选择平衡器的默认命令行输出
handles.output=hObject
%更新句柄结构
guidata(hObject,handles);
%等待使平衡器等待用户响应(请参见UIRESUME)
% ui等待(句柄。图1);
% -此函数的输出返回到命令行。
函数varargout=balancer _ output fcn(h对象,eventdata,句柄)
% varargout单元格数组,用于返回输出参数(请参见VARARGOUT);
% h对象句柄到音频_开始
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
%从句柄结构获取默认命令行输出
varargout { 1 }=handles.output
% -在音频负荷中按下按钮时执行。
函数audio load _ Callback(ho object,eventdata,handles)
% h对象句柄到音频负载(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
[文件名]=uigetfile(* ,选择音频文件);
[handles.audio,handles.audioFs ]=audioread(文件名);
audio _ f=ABS(FFT(句柄。音频));
plot( handles.audio_begin,Audio _ f);
手柄。audioname。string=文件名;
手柄。audio _ 100=FX _ FIR(句柄。音频fs,1100,手柄。音频);
手柄。audio _ 200=FX _ FIR(句柄。音频fs,100,200,手柄。音频);
手柄。audio _ 500=FX _ FIR(句柄。音频fs,200,500,手柄。音频);
手柄。audio _ 1K=FX _ FIR(句柄。音频fs,500,1000,手柄。音频);
手柄。audio _ 2K=FX _ FIR(句柄。音频fs,1000,2000,手柄。音频);
手柄。音频_ 4K=FX _ FIR(句柄。音频fs,2000,4000,手柄。音频);
手柄。audio _ 8K=FX _ FIR(句柄。音频fs,4000,8000,手柄。音频);
手柄。audio _ 16K=FX _ FIR(句柄。音频fs,8000,20000,手柄。音频);
%now_audio=音频_ 1K
手柄。now _ audio=手柄。audio _ 100手柄。audio _ 200手柄。audio _ 500手柄。audio _ 2K句柄。音频_ 4K手柄。audio _ 8K手柄。audio _ 16K
声音(handles.now_audio,handles。音频fs);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
%更新句柄结构
guidata(hObject,handles);
函数audioname_Callback(hObject,eventdata,handles)
% h音频名称的对象句柄(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
% Hints: get(hObject, String )以文本形式返回音频名称的内容
% str 2 double(get(ho object, String ))以双精度形式返回音频名称的内容
% -在设置所有属性后,在对象创建期间执行。
函数audioname_CreateFcn(hObject,eventdata,handles)
% h音频名称的对象句柄(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:在Windows操作系统上,编辑控件通常有一个白色背景。
%参见上海跨国采购中心有限公司和计算机。
如果ispc相等(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor , white );
目标
% -在滑块移动时执行。
函数Freq100_Callback(hObject,eventdata,handles)
% h对象句柄到频率100(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄频率100n um。string=num 2 str(a * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq100_CreateFcn(hObject,eventdata,handles)
% h对象句柄到频率100(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数slider7_Callback(hObject,eventdata,handles)
% h幻灯片的对象句柄7(请参见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
% -在设置所有属性后,在对象创建期间执行。
函数Freq500_CreateFcn(hObject,eventdata,handles)
% h对象句柄到频率500(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数Freq1K_Callback(hObject,eventdata,handles)
% h对象句柄到Freq1K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄频率1 knum。string=num 2 str(d * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq1K_CreateFcn(hObject,eventdata,handles)
% h对象句柄到Freq1K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数Freq2K_Callback(hObject,eventdata,handles)
% h对象句柄到Freq2K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄freq 2 knum。string=num 2 str(e * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq2K_CreateFcn(hObject,eventdata,handles)
% h对象句柄到Freq2K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数Freq4K_Callback(hObject,eventdata,handles)
% h对象句柄到Freq4K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄频率4 knum。string=num 2 str(f * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq4K_CreateFcn(hObject,eventdata,handles)
% h对象句柄到Freq4K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数Freq8K_Callback(hObject,eventdata,handles)
% h对象句柄到Freq8K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄频率8 knum。string=num 2 str(g * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq8K_CreateFcn(hObject,eventdata,handles)
% h对象句柄到Freq8K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在滑块移动时执行。
函数Freq16K_Callback(hObject,eventdata,handles)
% h对象句柄到Freq16K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄包含句柄和用户数据的结构(请参见GUIDATA)
尝试
a=get(句柄100法郎。值);
b=get(句柄频率200 值);
c=get(句柄500法郎。值);
d=获取(句柄Freq1K,’值);
e=get(句柄Freq2K,’值);
f=get(句柄Freq4K,’值);
g=get(句柄1000 freq 8k。值);
h=get(句柄 Freq16K,值);
手柄频率16 knum。string=num 2 str(h * 100);
all=get(handles.audiovoice, Value );
手柄。now _ audio=all *(a *手柄。audio _ 100 b *手柄。音频_ 200 c *手柄。音频_ 500d *手柄。audio _ 1K e *手柄。audio _ 2K f *手柄。音频_ 4K g *手柄。audio _ 8K h *手柄。audio _ 16K);
audio _ ff=ABS(FFT(handles。now _音频));
plot( handles.audio_end,Audio _ ff);
目标
guidata(hObject,handles);
% Hints:get(ho object, Value )返回滑块的位置
% get(ho对象, Min )和get(ho对象, Max )来确定滑块的范围
% -在设置所有属性后,在对象创建期间执行。
函数Freq16K_CreateFcn(hObject,eventdata,handles)
% h对象句柄到Freq16K(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
%提示:滑块控件通常有浅灰色背景。
如果等于(get(ho object, BackgroundColor ),get(0, defaultUicontrolBackgroundColor ))
set(hObject, BackgroundColor ,[。9 .9 .9]);
目标
% -在设置所有属性后,在对象创建期间执行。
函数图1_CreateFcn(hObject,eventdata,handles)
% h对象句柄到图1(见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
%句柄为空-调用所有创建Fcns后才创建句柄
% -在播放中按下按钮时执行。
函数play_Callback(hObject,eventdata,handles)
% h要播放的对象句柄(参见GCBO)
% eventdata保留-将在矩阵实验室的未来版本中定义
% handles包含句柄和用户数据的结构(请参见GUIDATA)
尝试
声音(handles.now_audio,handles . audio fs);
目标
guidata(hObject,handles);3模拟结果
4参考文献
博主:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等领域的Matlab仿真。相关的matlab代码问题可以私信交流。有些理论引用自网络文献。如有侵权,联系博主删除。
原创作品来自matlab研究助手,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。