《大连理工大学数字信号处理实验二电话拨号音的合成与识别》由会员分享,可在线阅读,更多相关《大连理工大学数字信号处理实验二电话拨号音的合成与识别(10页珍藏版)》请在金锄头文库上搜索。
1、大连理工大学实验报告学院(系): 电信 专业: 电子信息工程 班级: 电子1204 姓 名: 梁宇 学号: 201281001 组: _ 实验时间: 实验室: 实验台: 指导教师签字: 成绩: 实验二、电话拨号音的合成与识别一、实验题目和代码实现对电话通信系统中拨号音合成与识别的仿真实现。系统界面设计:源程序:function varargout = sy2(varargin)% SY2 MATLAB code for sy2.fig% SY2, by itself, creates a new SY2 or raises the existing% singleton*.% H = SY2
2、returns the handle to a new SY2 or the handle to% the existing singleton*.% SY2(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in SY2.M with the given input arguments.% SY2(Property,Value,.) creates a new SY2 or raises the% existing singleton*. Starting from the left,
3、 property value pairs are% applied to the GUI before sy2_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to sy2_OpeningFcn via varargin.% *See GUI Options on GUIDEs Tools menu. Choose GUI allows only one% instance to run
4、 (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help sy2 % Last Modified by GUIDE v2.5 03-Jun-2015 23:06:41 % Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_Ope
5、ningFcn, sy2_OpeningFcn, . gui_OutputFcn, sy2_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initializatio
6、n code - DO NOT EDIT % - Executes just before sy2 is made visible.function sy2_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 handl
7、es and user data (see GUIDATA)% varargin command line arguments to sy2 (see VARARGIN) % Choose default command line output for sy2handles.output = hObject; handles.fs=8192;handles.DTMFsum=820;handles.DTMFnum=410;handles.NUM=;handles.numshow2=;% Update handles structureguidata(hObject, handles); % UI
8、WAIT makes sy2 wait for user response (see UIRESUME)% uiwait(handles.figure1); % - Outputs from this function are returned to the command line.function varargout = sy2_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure%
9、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 structurevarargout1 = handles.output; % - Executes on button press in num1.function num1_Callback(hObject, eventdata, handles)%
10、hObject handle to num1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)n1=strcat(get(handles.numshow,string),1) %set(handles.numshow,string,n1); %n=1:handles.DTMFnum;d1=sin(2*pi*697/handles.fs*n)+sin(2*pi*1209/ha
11、ndles.fs*n);%space=zeros(1,handles.DTMFnum);%4100temp=d1,space;handles.NUM=handles.NUM,temp;%guidata(hObject,handles);audioplayer(d1,8192); % - Executes on button press in num2.function num2_Callback(hObject, eventdata, handles)% hObject handle to num2 (see GCBO)% eventdata reserved - to be defined
12、in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)n2=strcat(get(handles.numshow,string),2) %set(handles.numshow,string,n2); %n=1:handles.DTMFnum;d2=sin(2*pi*697/handles.fs*n)+sin(2*pi*1336/handles.fs*n);%space=zeros(1,handles.DTMFnum);%4100temp=d2,space;handles
13、.NUM=handles.NUM,temp;%guidata(hObject,handles);audioplayer(d2,8192); % - Executes on button press in num3.function num3_Callback(hObject, eventdata, handles)% hObject handle to num3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)n3=strcat(get(handles.numshow,string),3) %set(handles.numshow,string,n3); %n=1:handles.DTMFnum;d3=sin(2*pi*697/handles.fs*n)+sin(2*pi*1477/handles.fs*n)