第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 【数字信号处理】基于matlab GUI手机信号频谱+时域分析【含Matlab源码 1042期】

【数字信号处理】基于matlab GUI手机信号频谱+时域分析【含Matlab源码 1042期】

时间:2024-02-28 01:29:50

相关推荐

【数字信号处理】基于matlab GUI手机信号频谱+时域分析【含Matlab源码 1042期】

一、获取代码方式

获取代码方式1:

完整代码已上传我的资源: 【数字信号处理】基于matlab GUI手机信号频谱+时域分析【含Matlab源码 1042期】

获取代码方式2:

通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、数字信号处理系统简介

理论知识参考文献:基于GUI的《数字信号处理》教学演示系统的设计

基于Matlab GUI界面的数字信号处理辅助教学系统

基于MATLAB的数字信号处理实验平台

三、部分源代码

function varargout = shuangyinpin(varargin)% SHUANGYINPIN MATLAB code for shuangyinpin.fig%SHUANGYINPIN, by itself, creates a new SHUANGYINPIN or raises the existing%singleton*.%%H = SHUANGYINPIN returns the handle to a new SHUANGYINPIN or the handle to%the existing singleton*.%%SHUANGYINPIN('CALLBACK',hObject,eventData,handles,...) calls the local%function named CALLBACK in SHUANGYINPIN.M with the given input arguments.%%SHUANGYINPIN('Property','Value',...) creates a new SHUANGYINPIN or raises the%existing singleton*. Starting from the left, property value pairs are%applied to the GUI before shuangyinpin_OpeningFcn gets called. An%unrecognized property name or invalid value makes property application%stop. All inputs are passed to shuangyinpin_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 shuangyinpin% Last Modified by GUIDE v2.5 30-Nov- 22:51:30% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @shuangyinpin_OpeningFcn, ...'gui_OutputFcn', @shuangyinpin_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before shuangyinpin is made visible.function shuangyinpin_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 shuangyinpin (see VARARGIN)% Choose default command line output for shuangyinpinhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes shuangyinpin wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = shuangyinpin_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 structurevarargout{1} = handles.output;% --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=get(handles.edit1,'String');a=strcat(a,'1');set(handles.edit1,'String',a);Fs=8000;n=(0:511); FFTN=1024; snr=0; amp=sqrt(2*10^(snr/10)); f1=697;f2=1209;x=amp*(sin(2*pi*f1/Fs*n)+sin(2*pi*f2/Fs*n));fx=fft(x,FFTN);axes(handles.axes1)plot(x,'LineWidth',1.5);xlabel('n');ylabel('x(n)');title('时域波形');axes(handles.axes2)plot((0:FFTN/2-1)/FFTN*Fs/1000,abs(fx(1:FFTN/2)),'LineWidth',1.5);xlabel('kHz');title('幅频波形');sound(x);axes(handles.axes3);specgram(x,512,Fs,512);% --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)Fs=8000;n=(0:511); FFTN=1024; snr=0.989; a=get(handles.edit1,'String');a=strcat(a,'2');set(handles.edit1,'String',a);amp=sqrt(2*10^(snr/10));f1=697;f2=1336;x=amp*(sin(2*pi*f1/Fs*n)+sin(2*pi*f2/Fs*n));sound(x);fx=fft(x,FFTN);axes(handles.axes1);plot(x,'LineWidth',1.5);xlabel('n');ylabel('x(n)');title('时域波形');axes(handles.axes2);plot((0:FFTN/2-1)/FFTN*Fs/1000,abs(fx(1:FFTN/2)),'LineWidth',1.5);xlabel('kHz');title('幅频特性');axes(handles.axes3);specgram(x,512,Fs,512);% --- Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=get(handles.edit1,'String');a=strcat(a,'3');set(handles.edit1,'String',a);Fs=8000; n=(0:511); FFTN=1024;snr=0; amp=sqrt(2*10^(snr/10)); f1=697;f2=1447;x=amp*(sin(2*pi*f1/Fs*n)+sin(2*pi*f2/Fs*n));sound(x);fx=fft(x,FFTN);axes(handles.axes1);plot(x,'LineWidth',1.5);xlabel('n');ylabel('x(n)');title('时域波形');axes(handles.axes2);plot((0:FFTN/2-1)/FFTN*Fs/1000,abs(fx(1:FFTN/2)),'LineWidth',1.5);xlabel('kHz');title('幅频特性');axes(handles.axes3);specgram(x,512,Fs,512);% --- Executes on button press in pushbutton4.function pushbutton4_Callback(hObject, eventdata, handles)% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=get(handles.edit1,'String');a=strcat(a,'A');set(handles.edit1,'String',a);Fs=8000; n=(0:511); FFTN=1024;snr=0; amp=sqrt(2*10^(snr/10)); f1=697;f2=633;x=amp*(sin(2*pi*f1/Fs*n)+sin(2*pi*f2/Fs*n));sound(x);fx=fft(x,FFTN);axes(handles.axes1);plot(x,'LineWidth',1.5);xlabel('n');ylabel('x(n)');title('时域波形');axes(handles.axes2);plot((0:FFTN/2-1)/FFTN*Fs/1000,abs(fx(1:FFTN/2)),'LineWidth',1.5);xlabel('kHz');title('幅频特性');axes(handles.axes3);specgram(x,512,Fs,512);% --- Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)a=get(handles.edit1,'String');a=strcat(a,'4');set(handles.edit1,'String',a);Fs=8000; n=(0:511); FFTN=1024;snr=0; amp=sqrt(2*10^(snr/10)); f1=770;f2=1290;x=amp*(sin(2*pi*f1/Fs*n)+sin(2*pi*f2/Fs*n));sound(x);fx=fft(x,FFTN);axes(handles.axes1);plot(x,'LineWidth',1.5);xlabel('n');ylabel('x(n)');title('时域波形');axes(handles.axes2);plot((0:FFTN/2-1)/FFTN*Fs/1000,abs(fx(1:FFTN/2)),'LineWidth',1.5);xlabel('kHz');title('幅频特性');axes(handles.axes3);specgram(x,512,Fs,512);

四、运行结果

五、matlab版本及参考文献

1 matlab版本

a

2 参考文献

[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,.

[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,.

[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,.

[4]高彦彦,张晶,李莉,贾英茜.基于GUI的《数字信号处理》教学演示系统的设计[J].教育教学论坛. ,(48)

[5]李俊,张淑玲,帅晶.基于Matlab GUI界面的数字信号处理辅助教学系统[J].信息通信. ,(08)

[6]朱御康.基于MATLAB的数字信号处理实验平台[J].通信电源技术. ,38(03)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。