一、简介

1 平台概述
1.1 平台简介

信号调制仿真平台是对在通信中对信号传输进行调制并仿真出其频谱图的平台。该平台用于模拟通信系统中调制信号并仿真出频谱图,主要有幅度调制、角度调制、数字调制及自适应均衡,在相应的调制模块下,用户通过输入相应的参数即可得到输出结果。是集信息采集、处理、加工、传播的重要处理平台。
1.2 操作和界面解说
主要是对软件的基本的操作的内容和信息进行介绍的操作,帮助使用者更好的使用软件平台。
1.3 登录页面介绍
1.3.1 登录平台

操作方法
在matlab环境下双击平台的图标就会出现以下的界面,您在进入平台后,会看到平台的主页面,如图:
该界面是平台的主要的操作界面,根据界面的展示,使用者可以更好的操作软件平台了。
功能按钮区:使用者可以在该区域进行软件的操作与使用。
平台提示区域:对平台的操作进行提示的区域。

2平台功能
2.1幅度调制

幅度调制是使正弦载波的幅度随着调制信号做线性变化的过程,主要包括以下四种调制方式: DSB-AM、 普通AM、SSB-AM、残留边带幅度调制。点击功能按钮就会出现以下界面了。
2.2角度调制
角度调制是一种非线性调制方法,通常是载波的频率或相位随着基带信号变化。主要包括频率调制和相位调制。点击功能按钮就会出现以下界面了。
2.3数字调制
数字调制是将基带数字信号变换成适合带通型信道传输的处理方式。在数字通带传输中,数字基带波形可用来调制正弦波的幅度、频率和相位,分别称为数字调幅、数字调频、数字调相。点击功能按钮就会出现以下界面了。
2.4自适应均衡
自适应均衡器能够自动地调节系数从而跟踪信号,主要有RLS (递归最小二乘算法) CMA (常模盲均衡算法)。点击功能按钮就会出现以下界面了。

2.5平台管理
平台设置模块主要是对平台的主要操作进行设置的管理模块。
2.5.1退出平台
点击退出平台按钮,就给出相应提示,是否确定要退出平台,确定退出,直接点击退出平台按钮,则平台就会关闭,如需再次使用平台,则会回到我们的第一步操作,就是点击桌面的图标即可。

二、部分源代码

function varargout = amplitude(varargin)
% AMPLITUDE MATLAB code for amplitude.fig
%      AMPLITUDE, by itself, creates a new AMPLITUDE or raises the existing
%      singleton*.
%
%      H = AMPLITUDE returns the handle to a new AMPLITUDE or the handle to
%      the existing singleton*.
%
%      AMPLITUDE('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in AMPLITUDE.M with the given input arguments.
%
%      AMPLITUDE('Property','Value',...) creates a new AMPLITUDE or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before amplitude_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to amplitude_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 amplitude

% Last Modified by GUIDE v2.5 17-Oct-2019 13:32:07

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @amplitude_OpeningFcn, ...
                   'gui_OutputFcn',  @amplitude_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before amplitude is made visible.
function amplitude_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 amplitude (see VARARGIN)

% Choose default command line output for amplitude
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes amplitude wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = amplitude_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 structure
varargout{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)
set(gcf,'Visible','off'); 
(DSB_AM);


% --- 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)
(PT_AM);

% --- 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)
(SSB_AM);

% --- 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)
(VSB);

% --- 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)
set(gcf,'Visible','off'); 
(Homepage);

% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton6 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'Visible','off'); 
function varargout = angle(varargin)
% ANGLE MATLAB code for angle.fig
%      ANGLE, by itself, creates a new ANGLE or raises the existing
%      singleton*.
%
%      H = ANGLE returns the handle to a new ANGLE or the handle to
%      the existing singleton*.
%
%      ANGLE('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in ANGLE.M with the given input arguments.
%
%      ANGLE('Property','Value',...) creates a new ANGLE or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before angle_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to angle_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 angle

% Last Modified by GUIDE v2.5 17-Oct-2019 13:42:00

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @angle_OpeningFcn, ...
                   'gui_OutputFcn',  @angle_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before angle is made visible.
function angle_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 angle (see VARARGIN)

% Choose default command line output for angle
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes angle wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = angle_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 structure
varargout{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)
(TP);

% --- 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)
(TX);

% --- 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)
set(gcf,'Visible','off'); 
(Homepage);

% --- 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)
set(gcf,'Visible','off'); 

三、运行结果

【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_参考文献
【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_ide_02
【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_参考文献_03
【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_自适应_04
【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_自适应_05
【数字信号调制】基于matlab GUI数字信号调制仿真平台【含Matlab源码 880期】_sed_06

四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.