- 1、本文档共58页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
虚拟仪器课件第四章
第四章 LabVIEW的程序结构 主要的程序结构有: 循环(While循环和For循环,移位寄存器反馈结点) 顺序(Sequence结构) 选择(Case结构) 事件(Event结构) 属性节点 公式节点(Formula Node) Labview 7 express 实用技术教程 雷振山 中国铁道出版社 关于”实验二创建VI”的思考 思考: 1.单次运行就产生100组模拟值,怎么办? 2.数据显示更新过快,怎么办? 3.要求数据显示更新时间可调,怎么办? 4.1 For循环 文本语言的For循环 For(i=0;iN;i++) { 循环体; } Labview中的For循环 基本的For循环结构由: 循环框 循环次数端口 计数端口组成。 2.For循环的工作流程 For循环用于将结构中的程序循环执行指定的次数。 在开始For循环之前,从循环次数端口读入循环次数,计数端口输出0值。 接下来执行For循环框内框图代码程序,每执行一次计数端口值自动加1。 循环次数达到设定值后,退出循环。 For循环的时间控制 实验二 “创建VI”的改进 问题: 1.显示更新太快,看不清楚,怎么办? 2.如果希望显示更新时间可控,怎么办? 利用For循环的自动索引创建数组 在For循环的边框上可以自动地按顺序累积数据,形成数组,这种特性被称为自动索引。 自动索引为打开状态时,每一次循环产生一个新的数组元素,并存储在循环的边框上。 例如:下图中通道自动索引功能有效时,每一次循环产生一个新的数据,存储在循环的边框通道上,待循环结束以后,产生的6个数据将传送到一个数组指示器中。自动索引功能无效时,只有最后一次For循环产生的1个随机数传到循环外。 创建二维数组 使用两个For循环,把其中一个嵌套在另一个中可以生成一个二维数组。外层的For循环产生行,而内层的For循环产生列 For循环对数组的索引功能扩展 自动索引不仅是指将循环框内的数据累加成一个数组输出到循环框外面,还指将循环框外面的数组成员逐个依次进入循环体内。 数据通道是用连线工具连接循环框内外的数据端口时,在框架上自动形成的方形通道图标 。图标空心表明此时数据通道具有自动索引功能,实心图标不能索引 若自动索引被设为无效,则只有最后一次循环产生的数传到循环外 。 For循环数据出口的自动索引默认为有效。在数据出口信道上右击,弹出菜单中可修改自动索引。 习题一 利用For循环产生一个周期的方波, 每周期包含20个数据点, 峰峰值为2, 以y=0为对称轴 1.创建一个测量温度的VI程序,该程序显示温度的单位可以选择为华氏度或摄氏度,并建立其图标/连接口,使之可被其他VI程序作为子程序调用。 2. 学习调用练习1中所建立的子VI,若是华氏温度则可以直接显示,若是摄氏温度则可将其转化为华氏温度。 利用For循环产生一个周期的三角波, 锯齿波,怎么办? 答案 4.2 While循环 For循环和While循环的区别: For循环要执行预先指定的循环次数。 而While循环只有在条件端口接收到的值为False时才停止循环。While循环不必知道循环次数。 While循环不满足条件也要执行1次。 For循环当N1时1次都不执行。 1.While循环的创建 While循环由循环框、条件端口和计数端口组成。 2.While循环的工作流程 条件端口控制循环的停止与否。 条件端口有两种状态 : 当使用状态为Stop if True 时,若输入值为Ture,则停止循环 。若输入值为False,则继续执行下一次循环。 当使用状态为Continue if True 时,若输入值为Ture,则继续执行下一次循环。若输入值为False,则停止循环。 循环结束后,才去检测条件端口的值,因此不管条件是否成立,循环至少要执行一次。 相当于C语言中的 do { 循环体 ; }while(条件) 习题二 分别用for或while循环计算: 计算y=1+2+….+N; 计算y=∑x2 ,x=0,1,….N; 文本语言 for循环 s=0; for(i=1;i=n;i++) { s=s+I; } 4.移位寄存器 创建:右击边框,弹出一个菜单,选择Add Shift Register选项,可添加一个移位寄存器。 用途:主要用于While循环和For循环,将上一次循环的值传给下一次循环。 数据类型: 数字型、布尔型、字符串等 。 初始化:在循环外将初始值连到移位寄存器的左端口,有默认初值。 还可以存储前几次循环
文档评论(0)