您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于MATLABGUI的多功能计算器设计
基于MATLAB/GUI的多功能计算器设计摘要:随着信息技术的发展,数据变得越来越繁杂,针对数据的运算也越来越频繁,计算器在我们日常生活学习中扮演越来越重要角色。本文基于MATLAB设计的GUI多功能计算器,包括三部分:简易计算器、科学计算器和程序员计算器。其中,简易计算器包括了常用的加减乘除;科学计算器在加减乘除上,添加了正余弦、阶乘和对数等常用的数学计算;程序员计算器包括了二进制、八进制、十六进制的相互转换和二进制的与、或和异或等逻辑运算。此多功能计算器改进了以前功能单一的计算器,具有较强的实用性。关键词:MATLAB;GUI;多功能计算器DesignofMultiFunctionCalculatorBasedonMATLAB/GUIAbstract:Withthedevelopmentofinformationtechnology,thedatabecomemoreandmorecomplicated,accordingtodataoperationshavebecomeincreasinglyfrequent,thecalculatorisplayingamoreandmoreimportantroleinlearninginourdailylife.Inthispaper,MATLABdesignofGUIbasedmultifunctionalcalculator,consistsofthreeparts:asimplecalculator,scientificcalculatorandprogrammerscalculator.Thesimplecalculator,includingcommonadd,subtract,multiplyanddivide;scientificcalculatorinadd,subtract,multiplyanddivide,addthecommonlyusedmathematicalcosine,factorialandlogarithmcalculation;programmerscalculatorincludestheconversionofbinary,octal,hexadecimalandbinarysixteenand,orandXORlogicoperation.Themulti-functioncalculatorbeforeimprovedsinglefunctionhasastrongpractical.Keywords:MATLAB;GUI;MultiFunctionCalculator目录第一章引言····················································································1第二章总体设计··············································································32.1总体外观···················································································32.2功能模块的调用··········································································5第三章菜单设计··············································································73.1菜单结构设计·············································································73.2“File”菜单设计············································································73.3“Help”菜单设计·········································································8第四章模块设计··············································································84.1“简易计算器”模块设计······························································84.2“科学计算器”模块设计·····························································114.3“程序员计算器”模块设计··························································144.4“程序说明”模块设计································································204.5“版权所有”模块设计································································20第五章总结···················································································21致谢·························································································22参考文献·························································································22附录···································································错误!未定义书签。1第一章引言MATLAB是matrix和laboratory两个词的组合,意为矩阵工厂,是由美国MathWorks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。MATLAB是当今最优秀的科技应用软件之一,它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,特别是所附带的30多种面向不同领域的工具箱支持,使得它在许多科学领域中成为计算机辅助设计和分析、算法研究和应用开发的基本工具和首选平台。MATLAB]1[是一套高性能的数值计算和可视化软件,它作为新兴的编程语言和可视化工具,有着其他编程语言无法比拟的优势,例如Fortran语言,是一种专用于科学计算的语言,但其图形界面的功能较弱,利用其所可开发的程序,用户界面不友好,使用起来不方便,而VB、VC等可视化编程语言开发出来的程序界面友好,但由于其不是专门用于科学计算的语言,因此其科学计算功能较弱。而MATLAB同时具备这两方面的优势,既能进行科学计算,又能开发出所需要的图形界面,特别是Mathworks公司推出的MATLAB6及以上版本更是加强了图形界面编程功能。MATLAB的图形用户界面(GUI)是由光标,窗口,菜单、文字说明等对象构成一个用户界面。用户可以通过键盘输入相关的参数,通过鼠标选择、激活这些对象,使计算机完成相关的计算或者绘制波形等功能。MATLAB的GUI为开发者提供了一个不脱离MATLAB的开发环境,有助于MATLAB程序的GUI集成。这样可以使开发者不必理会一大堆烦杂的代码,简化程序,但是同样可以实现向决策者提供图文并茂的界面,甚至达到多媒体的效果。可以说,MATLAB提供了一个简便的开发环境,可以让开发者快速上手,提高了开发者的工作效率。MATLAB的图形界面设计是通过对各种图形对象的操作来实现的,因此用户在使用的过程需要深入了解各种图形对象的特征、属性和操作。由此可见,图形用户界面的设计、制作是一件比较繁琐的工作。图形用户界面的创建一般有两种常用的方式:第一,通过使用m文件直接动态添加控件;第二,使用GUIDE]2[快速生成GUI界面。这两种实现的方法都需要使用M语言编程,但是技术的侧重点不同。其实GUIDE创建图形用户界面的基础也是图形句柄对象,只不过是具有很好的封装,使用起来简便,而且还能够做到可视化的开发,对于一般的用户使用2GUIDE创建图形用户界面应用程序已经足够了。根据情况分析,第二种可视化编辑方法更适用于本次设计,故本设计采用GUIDE快速生成界面的方法进行设计。所谓的GUIDE就是图形用户界面开发环境(GraphicalUserInterfaceDevelopmentEnvironment),它向用户提供了一系列的创建用户图形界面的工具。这些工具大大简化了GUI设计和生成的过程。GUIDE可以完成的任务有如下两点:第一,输出GUI,第二,GUI编程。GUIDE实际上是一套MATLAB工具集。打开GUIDE,新建并且保存后,会生成相应的fig文件和m文件,fig文件储存有图形用户界面的外形、菜单构架等信息;m文件则储存设计的程序部分,如主程序、回调函数(Callback)等。在Layout编辑视图,可以使用如下工具:布局编辑器(LayoutEditor),对齐工具(AlignmentTool),对象属性观察器(PropertyInspector),对象浏览器(ObjectBrowser),菜单编辑器(MenuEditor)。新建一个布局,可以在新窗口中添加各种控件:静态文本(StaticText),编辑框(EditText),列表框(Listbox),滚动条(Slider),按钮(Pushbutton),开关按钮(ToggleButton),单选按钮(Radiobutton),按钮组(ButtonGroup),检查框(CheckBox),弹出式菜单(PopupMenu),坐标轴(Axes),面板(Panel)。每个控件的属性中都含有多个参数,对应各个参数,可以对控件的外观,位置等各方面属性进行修改。所以,对于同样一个功能的界面,设计的方法就有很多种。设计GUI界面时,应使总体界面简单大方、控件布局合理,最终达到总体界面友好的效果。本次设计主要使用可以使整体布局整齐、直观的Panel、StaticText为辅,以直接点击产生效果的PushButton为主,以可以输入和输出的EditText为中心展开布局。本设计中主要利用get]3[和set两个函数进行各控件属性值的传递,实现多功能计算器的设计。为适应不同用户的使用要求,界面包含多个功能模块,功能键根据具体的功能归类,同类功能置于同一功能模块中。模块的显示与隐藏可以通过“File”菜单和“Help”菜单实现。模块的初始visible属性设置为off,即不显示模块。这样用户就可以选择只打开自己所需要的模块,使界面视觉效果上更为简洁。多功能计算器包括三类计算器:简易计算器、科学计算器和程序员计算器。简易计算器实现数字的加减乘除;科学计算器实现数学函数和数字的综合运算;程序员计算器实现二进制、八进制、十进制和十六进制的转换以及二进制数之间的逻辑运算。这三类计算器适用范围不同,基本满足不同人员对于计算的需求。3第二章总体设计2.1总体外观软件的总体设计界面外观如图2.1—2.3所示。总体外观包括三部分:“简易计算器”模块、“科学计算器”模块和“程序员计算器”模块。设置三类计算器所在面板(Panel)的
本文标题:基于MATLABGUI的多功能计算器设计
链接地址:https://www.777doc.com/doc-2646908 .html