预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机原理及应用技术 附录BMATLAB编程与SIMULINK仿真简介 数字信号处理 TOC\o"1-3"\h\z\u MATLAB编程与SIMULINK仿真简介 A.1MATLAB编程基础 MATLAB6.5提供了丰富的编程语句结构和实用函数,MATLAB产品组是支持你从概念设计、算法开发、建模仿真到实时实现的理想的集成环境。无论是进行科学研究还是产品开发,MATLAB产品族都是必不可少的工具。这里介绍一些常用的编程技巧和方法,以便同学们能尽快地启动起来,更好地应用MATLAB。 1.MATLAB文件的编写与调试环境 M文件的编写与调试在MATLABEditor/Debugger下进行(图B1-1),这个集成环境可以方便地进行新建、修改、存储,选择Debug菜单中的Run命令就可以运行程序,运行结果显示在MATLABCommandWindow中。程序的调试应用Debug菜单就可以进行调试,其他高级语言中的Set/ClearBreakpoint、SingleStep、Stopiferror等选项都有,可以方便的调试程序。 图B1-1M文件的编写与调试窗口 在MATLABEditror/Debugger下按照MATLAB编程的规则键入相关的语句并存盘,就可以得到一个后缀为.m的文本文件。 2.MATLAB脚本文件和函数文件 在MATLAB中,无论是问题的提出还是结果的表达都采用你习惯的数学描述方法,而不需要用传统的编程语言进行处理。应用MATLAB编写出来的程序可以是M脚本文件(Scriptfile),也可以是M函数文件(Functionfile),这些文件都由纯ASCII字符构成,其后缀。 MATLAB下M脚本文件是一串按用户意图排列而成的(包括控制流向指令在内)MATLAB指令集合,可以直接执行,用户只需在CommandWindow中MATLAB提示符>>后键入文件名即可执行。脚本文件运行后所产生的所有变量都驻留在MATLAB的基本工作空间(Baseworkspace)中,只要用户不加以清除且MATLAB指令窗不关闭,则这些变量将一直保存在基本工作空间。与脚本文件不同,函数文件犹如一个“黑箱”,从外界只看到传给它的输入量和送出来的计算结果,内部运作是看不见的,并且函数文件的第一行总是以“function”引导的“函数申明行”。M函数文件必须由其它的语句来调用,在一般情况下用户不能单独键入其文件名来运行一个M函数。 MATLAB下的大多数的应用程序由M函数文件形式给出,例如求取系统特征方程的根的root()函数和绘制零极点图的pzmap()函数等。除了M函数文件之外,MATLAB还提供了大量的底层函数(内部),这类文件是不可读的,与M函数一起统称为函数。 3.M文件的一般结构 从结构上看脚本文件只是比函数文件少一个“函数申明行”,所以脚本文件和函数文件除第一行不同外,其余的结构都是一样的。 典型M函数文件的基本结构可由以下几部分构成: (1)函数申明行(Functiondeclarationline),位于函数文件的首行,以MATLAB关键字function开头,函数名以及函数的输入输出宗量都在这一行中定义; (2)H1行(Thefirsthelptextline):紧随函数申明行之后以%开头的第一行注释行。H1行包括大写体的函数名和运用关键词简要描述的函数功能,该行供lookfor关键词查询和help在线帮助查询使用; (3)在线帮助文本(Helptext)区:H1行及其之后的连续以%开头的第一行的所有注释行构成在线帮助文本; (4)编写和修改记录:标志编写及修改该M文件的作者、日期,便于档案管理; (5)函数体(Functionbody):该部分由实现M函数功能的MATLAB指令组成。它接收输入宗量,进行程序流程控制,得到输出宗量。从运算角度看“函数申明行”和“函数体”两部分是构成M函数文件所必不可少的。 函数文件(Functionfile)由function()语句引导,其基本格式为: function返回变量名=函数名(输入变量列表) 注释说明语句段 函数体语句 在编制程序的过程中输入和返回的变量分别由nargin和nargout两个MATLAB的保留参数给出,返回变量要多于1个,应该用方括号括起来,输入变量用逗号隔开。注释语句段的内容如果用户采用help命令则可以显示出来,其功能和MATLAB提供的函数是一致的。下面以MATLAB6.5controltoolbox内的Bode()函数来说明M函数文件结构示例如下: [exm001.m] function[magout,phase,w]=bode(a,b,c,d,iu,w)函数申明行 %BODEBodefrequencyresponseofLTImod