基于MATLAB的数字基带传输系统(3)

2019-05-24 14:27

第二章 MATLAB及其GUI平台

MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATALB可以创建图形用户界面GUI,它是用户和计算机之间交流的工具。MATLAB将所有GUI支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。

对于MATLAB图形用户界面,基于面向对象的设计过程一般包括以下两项工作:GUI界面设计和GUI组件编程[8]。

2.1 GUI界面设计

(1)确定对象或类

根据所需处理的通信信号对通信系统进行对象的提取和类的确定;确认各对象与类之间的继承和聚合关系,将类和对象按照层次方式组织起来,是系统结构更加清晰,系统模型更有条理,也使编程人员、维护人员清楚对象与类之间的内在联系

(2)图形用户界面的外观设计

通过MATLAB GUIDE面板提供的对话框、按钮、文本框等图形控制对象和坐标对象,设计通信系统信号处理的仿真平台图形用户界面。在外观设计时还需考虑通信信号处理系统的功能配置,即该图形用户界面的操作将引发何种结果[9]。

(3)图形用户界面的功能配置

根据外观设计阶段所确定的用户界面功能需求,针对不同的图形对象编写能够实现该对象功能的回调函数代码,确保图形用户界面完成所有预定的通信信号处理的功能。

本设计旨在设计一个通用的对通信信号处理的通信系统仿真平台,能够实现在发送端对不同输入信号,进行调制,加密,编码等一系列处理,在接收端对接收信号进行解调,解密,前向纠错等一系列处理,并要求该平台操作简单方便,具有良好的可扩展性。

本设计根据输入到通信信号处理系统的通信信号形式及需要对其进行的处理,对通信系统进行分解,抽象出基本运算单元及组合关系并将其封装成相互独立的各个对象;通过类或对象的认定确定类之间的继承、概括和特化关系;然后对其属性、所提供的方法和所需要的方法进行描述,并按照他们之间的关系进行组织,得到类(或对象)的层次结构;最后将类(或对象)用特定的图形或图标进行表示,进而建立相应的通信信号处理的算法模型并使之服务于搭建的通信系统的仿真平台。

5

2.2 GUI组件编程

(1)确定GUI对象,通过设置GUIDE应用程序的选项来进行GUIDE组态。 在面向对象的系统分析(OOA)过程中,从信号处理的系统中抽象出面向对象编程(OOP)的类和对象。对话框的选项包括窗口重画行为,命令行访问、生成文件选择、生成回调函数原型、使用系统背景颜色配置等选项,通过不选或选中它们来实现图形用户界面的整体组态设计[10]。

(2)使用界面设计编辑器进行GUI界面设计。

MATLAB界面设计编辑器组件平台中包含所有能够在GUI中使用的用户界面控件,即按钮、单选按钮、栓牢按钮、复选框、编辑框、静态文本、滚动条、组合框、列表框以及弹出式菜单等。一个GUI中可以存在一个或多个以上的GUI组件,使用时要注意保证各个组件的名称或属性有所不同,以便区分。

(3)理解应用程序M文件中所使用的编程技术。

MATLAB可以通过创建应用程序M文件为GUI控制程序提供一个框架。该框架孕育着一种高效而坚固的编程方法,即所有代码均包含在应用程序M文件中,这就使得M文件只有一个入口可以初始化GUI或调用相应的回调函数以及GUI中希望使用的任意帮助子程序。对应用程序M文件代码进行详细分析,通过了解GUIDE创建应用程序M文件的功能,从而实现GUI的规划。

(4)编写用户GUI组件行为响应控制(即回调函数)代码。

控制GUI组件响应用户的行为是GUI的实现任务之一。MATLAB的GUIDE可以根据用户GUI的版面设计过程直接自动生成M文件框架,这样就简化了GUI应用程序的创建工作,用户可以直接用这个框架编写自己的函数代码。

(5)保存并执行GUI。

激活GUI界面,确保界面符合预定的要求,设计满意后保存GUI。运行通信信号处理的仿真平台的应用程序M文件,对其进行反复的调试,使界面及用户空间符合系统预定的功能。

6

第三章 软件设计

3.1 基带传输系统基本组成

图3.1 数字基带传输系统仿真结构图

数字基带传输系统由信源、形成滤波器、信道(噪声)、接收滤波器、抽样判决几部分组成。发送滤波器的传输特性为GT???,接收滤波器传输特性为GR???,信道传输特性为C???,则基带传输系统的总传输特性为

GT???GR???C H???=??? (3-1) 3.2 界面设计及实现

3.2.1 界面设计

考虑到要实现各个模块之间的切换,因此在界面设计中采用了menu edit(菜单栏)来实现[11]。进入guide界面后创建菜单栏。MATLAB GUI平台默认的菜单栏。

图3.2 MATLAB GUI标准菜单栏图

MATLAB GUI平台默认的菜单栏包含常见的打开、保存、缩放、拖动等功能,本设计的菜单栏用作不同模块之间的切换,因此省去这些复杂的功能。

本设计的菜单栏有分为五部分:系统介绍、信源仿真、形成滤波器仿真、接收滤波器仿真、抽样判决。

7

图3.3 菜单栏设计图

各模块放置于不同的panel上,各菜单栏按键callback函数通过设置不同的panel面板的可见性,拿信源仿真为例介绍。点击信源仿真菜单,通过设置各panel面板的可见性,最终实现“信源仿真”模块在该菜单栏处于选中状态时,该面板被调用。其他菜单按键与此类似,可实现各模块间的切换。执行如下函数: function Untitled_2_Callback(hObject, eventdata, handles) set(handles.panel2,'Visible','on'); set(handles.panel1,'Visible','off'); set(handles.panel3,'Visible','off'); set(handles.panel4,'Visible','off'); set(handles.panel5,'Visible','off'); 3.2.1 界面实现效果

打开exe可执行程序后,进入界面显示如下

8

图3.4 菜单栏显示效果图

菜单栏位于界面上方,点击信源仿真按键,可进入信源仿真模块。

图3.5 信源模块显示效果图

其他菜单栏按键与此相似,不再重复说明。

9


基于MATLAB的数字基带传输系统(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:最新初中人教版七年级数学上册课题:余角和补角公开课教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: