LabVIEW编程及虚拟仪器设计(第五讲)_第1页
LabVIEW编程及虚拟仪器设计(第五讲)_第2页
LabVIEW编程及虚拟仪器设计(第五讲)_第3页
LabVIEW编程及虚拟仪器设计(第五讲)_第4页
LabVIEW编程及虚拟仪器设计(第五讲)_第5页
已阅读5页,还剩30页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、LabVIEW编程及虚拟仪器设计授课教师:周红标电话-mail: 第五讲:字符串和文件I/O上节课内容回顾一、图形显示二、Express VI 两个波形发生VI;两种外观,经快捷菜单“显示为图标”可实现外观互换;其中快速VI捆绑了多个波形发生函数。波形图/ XY图/图表/强度图形控件/三维图形控件上节课内容回顾三、局部变量和全局变量 局部变量是对前面板控件数据的一个引用。在一个VI中,可以为一个前面板控件建立多个局部变量。从与某控件关联的多个局部变量中的任一个,都可读取该前面板控件中的数据;向其中任一局部变量中写入数据,都会改变包括前面板控件本身和其他所有局部变量的数

2、据拷贝。 全局变量可用于在同时运行的几个VI间传递数据。全局变量只有“前面板”而无“框图”,是一种特殊VI。 应慎用局部变量和全局变量(VI可读性,竟态条件)。 四、属性节点 不同前面板控件(控制器、显示器)的属性种类和个数不同,LabVIEW允许对前面板控件的属性进行更改。进行VI编程时,正是利用属性节点这个工具,可实现对不同前面板控件属性的设置、调整及读取它的值,从而使VI界面更生动美观。本节课内容 一、字符串 二、文件I/O 三、综合小练习本部分内容主要包括以下三个方面:字符串控件 字符串的显示方式字符串的操作函数 一、字符串 字符串是ASCII字符的集合。字符串用于文本传送、文本显示以

3、及数据存储等。在对计算机化的虚拟仪器进行控制操作时,控制命令和数据信息等大多都是按字符串格式加以传送的。 同其他的计算机语言一样,LabVIEW也具有对各种字符串的处理能力。字符串控件(1)路径:“控件”选板 - “新式” - “字符串与路径”子选 板和 “列表与表格” 子选板 (共两个子选板) 字符串输入控件和显示控件字符串控件(2)“控件”选板 - 新式 - “字符串与路径”子选板(1)组合框 在组合框中,可以写入多个字符串,每个字符串称为一“项”,并对应一个 “值”。在组合框上弹出快捷菜单,经选择 “属性” - “编辑项”(出现右图),可对具体的“项”和“值”进行编辑和确认。字符串控件(

4、3) “控件” - “新式” - “列表与表格”子选板 (2)表格和 Express 表格 表格是由字符串组成的二维数组,其每个单元格可写入一个字符串。Express 表格可快捷、很方便地产生二维字符串数组。将表格控件放置在前面板上,便可输入、编辑字符串;点击它弹出快捷菜单,可进行参数属性的设置及调整。 字符串控件(4)“控件”选板 - “新式”- “表格与列表”子选板 树形这种控件,允许用户以树型目录的形式进行条目设置专门为计算机化的虚拟仪器要输出测试报告、打印测量结果而确立的一种功能。 (3)树形2. 字符串的显示方式(1) 在字符串控制器、字符串显示器的快捷菜单中,均有以下4种不同显示方

5、式的属性配置: 正常显示:字符串控件的默认设置。在这种方式下,制表符“t”、“ESC”等字符串不可显示。 “” 代码显示 :用以查看在正常显示方式下不显示的字符代码。此方式下,LabVIEW将把输入字符串中反斜线“”及其后接的字符作为一种代码。该显示方式多用于程序调试、向仪器设备传输字符等。密码显示:在此方式下,用户输入的字符均以字符“” 代替。对于复制等操作,在剪贴板中出现的也是“”字符。十六进制显示:在该方式下,字符以对应的十六进制ASCII码显示。这种显示方式在程序调试和VI通信时使用较多。2. 字符串显示方式(2) 4 种显示方式举例代码LabVIEW中含义代码LabVIEW中含义b退

6、格符t制表符f进格符s空格符n换行符反斜线:“”r回车符%百分比符号LabVIEW中的特殊字符 “控件”选板 - “新式” - “字符串与路径”子选板3. 字符串的操作函数(1)名 称图标和连接端口功 能 说 明字符串长度返回(输出)字符串长度连接字符串把几个字符串连接起来组成一个新字符串截取字符串从输入字符串的“偏移量”位置开始,取出要求长度的子字符串转换为大写字母将输入字符串中所有字符转换为大写形式转换为小写字母将输入字符串中所有字符转换为小写形式“函数”选板 - “编程” - “字符串”子选板3. 字符串的操作函数(2)替换子字符串在指定位置插入、删除或替换子字符串搜索替换字符串查找并替

7、换指定字符串 匹配模式从“偏移量”开始查找字符串的“正则表达式”,找到后,按它的位置把输入字符串分为三段3. 字符串的操作函数(3)格式化日期/时间字符串以指定的格式显示时间字符串 扫描字符串根据“格式化字符串”提取并转化字符串格式化写入字符串把字符串、数值、路径或布尔量转换为字符串格式电子表格字符串至数组转换 把电子表格格式的字符串转换成数组字符串程序举例1:字符串的组合(1) 所用到的“字符串操作函数”有:“格式化写入字符串”; “字符串长度” 路径: “函数”选板 - “编程” - “字符串”子选板字符串程序举例1:字符串的组合(2) 在字符串操作函数“格式化写入字符串” 的图标上双击左

8、键,或单击右键选择快捷菜单中的“编辑格式字符串”选项,均可打开格式化字符串的参数设置对话框,如此,可快捷地完成字符串格式化输出的具体设置。字符串程序举例 2 :字符串的分解 用虚拟仪器进行数据采集时,有时需要从仪器返回的字符串中提取出(分解出)某些子字符串。 路径: “查找范例”Generalstrings.llb的Parse String vi 打开和关闭数据文件;在文件中读取和写入数据;读取和写入数据到电子表格格式的文件;转移和重新命名文件与目录;改变文件属性;创建、修改和读取配置文件 二、文件I/O(1) LabVIEW提供的文件I/O函数,是一组功能较强的文件处理工具。使用文件I/O函

9、数,可以进行所有有关文件的输入和输出操作。 LabVIEW的文件I/O函数主要包括: 二、文件I/O(2) 一个典型的文件I/O操作,包括以下三个步骤: 1)创建或打开一个文件。文件打开后,LabVIEW会 自动创建一个引用句柄(“机关临时出入证”); 2)对已经打开的文件做读取或写入的操作; 3)关闭文件;同时,引用句柄被自动释放。 引用句柄是一种特殊的数据类型。当打开一个文件时,LabVIEW将提供一个与此文件相联系的所谓引用句柄。此后,所有与该文件相关的操作,都可以使用该引用句柄来进行。文件关闭后,引用句柄即被释放。引用句柄的分配是随机的。二、文件I/O(3) 一些所谓高层文件I/O函数

10、,可以一次完成上述所有三个步骤,但效率较低。而另一些所谓低层文件I/O函数,则只负责完成其中一个步骤。高层文件I/O和低层文件I/O 写入单个操作中的文件,宜使用高层文件I/O函数;如果写入位于循环中的文件(多为连续写入的情况),为提高效率、避免重复打开和关闭文件,应使用低层文件I/O函数。二、文件I/O(4) 1. 文件格式 1)文本文件最常用和最通用的文件格式 ASCII 格式。如果希望其他软件也可以访问数据,就需要将数 据存储为的文本文件。 2)二进制文件最紧凑、最快速存储文件的格式。 3)数据记录文件是记录结构的二进制格式文件。它类 似于数据库文件,可将不同类型的数据存储在同一个文 件

11、记录中。 4)波形文件。 5)基于文本的测量文件,即:Text-Based Measurement Files(后缀为lvm)。 6)二进制测量文件,即:Binary Measurement Files (后 缀为tdm)。2. 文件I/O操作函数(1) “函数”选板 - “编程” - 文件 I/O2.文件I/O操作函数(2) “函数 ”- “编程” - 文件 I/O(1)写入电子表格文件 功能:将由数值组成的一、二维数组转换成文本字符串,写入一个文件。如果该文件之前已存在,则可选择将数据追加到原有数据之后,也可以选择覆盖原文件的数据;若原无文件,则创建新文件。该VI在写入数据前,将先打开或新

12、创建文件;写入完毕后,会将关闭文件。可见,是一种高层函数。该函数可用于创建能被大多数电子表格软件读取的文本文件。2. 文件I/O操作函数(3) “数据” - “编程” - 文件 I/O(2)读取电子表格文件 功能:从被打开文件的某个特定位置起,读取指定个数的行或者列的数据,再将数据转换成二维单精度数组;用于读取文本格式的电子表格文件。它先打开文件,读取完成后,再关闭文件。可见是一种高层函数。 应注意:必须保证这个电子表格文件中的所有字符串全都 是由有效的数值字符组成的。2. 文件I/O操作函数(4) “数据” - “编程” - 文件 I/O(3)写入文本文件 功能:将一个从 “文本” 端子输入

13、的字符串或字符串数组写入一个文件。如果该文件原不存在,则按指定路径新创建一个文件。该VI首先打开或新创建文件,然后写入数据,最后关闭文件。可见,是一种高层函数。 2. 文件I/O操作函数(5) “数据” - “编程” - 文件 I/O(4)读取文本文件 功能:从文件中读取指定数目的字符或行 。默认条件下读取字符;打开快捷菜单选中“读取行”选项,则从文件中读取几行字符。应注意:如果输入端“计数”输入的数小于0,就读取全体字符或行。运行时,它先打开文件,然后读取数据,之后关闭文件。可见,是一种高层函数。 2. 文件I/O操作函数(6) “数据” - “编程” - 文件 I/O(5)格式化写入文件

14、功能:将字符串、数值、路径或布尔数据格式化为文本并写入一个文件。“格式字符串”用于定义怎样转换“输入1n”的输入元素。“输入1n”为被转换的输入参数,可以是字符串、路径、枚举、时间标识或任意类型的数值数据,但不能接入数组或簇。“输出文件引用句柄”输出该VI读取的引用句柄。可以利用引用句柄进行与输出文件有关的操作。是一种高层函数。 2. 文件I/O操作函数(7) “数据” - “编程” - 文件 I/O (6)打开/创建/替换 文件 功能:打开或替换已有的文件;也可用于创建新文件 。用户可以用“文件路径”指明文件路径;如果没有指定,在运行时,LabVIEW会弹出文件对话框让用户指定。它只有单一功

15、能(不存储、不关闭)。是一种低层函数。 2. 文件I/O操作函数(8) (7)写入二进制文件 “数据” - “编程” - 文件 I/O 功能:将二进制数据写入新文件,将数据添加到现有文件,或替换文件的内容。如连接至文件(使用对话框)输入的是一个路径,函数先打开或创建文件,将内容写入文件,然后替换任何先前文件的内容。如连接至文件(使用对话框)的是一个文件引用句柄,写入操作在当前文件位置开始。要在现有文件之后添加内容,使用设置文件位置函数,将文件位置设置在文件结尾。 它也是一种高层函数。2. 文件I/O操作函数(9) (8)读取二进制文件 “数据” - “编程” - 文件 I/O 功能:从文件中读

16、取二进制数据,从“数据”端子输出。读取数据的方式取决于指定文件的格式。是一种高层函数。2. 文件I/O操作函数(10) (9)关闭文件 “数据” - “编程” - 文件 I/O 功能:关闭引用句柄所指明的文件。此单一操作功能具体包含如下步骤:把在缓冲区里的文件数据写入物理存储介质中; 更新文件列表的信息,如文件最后修改的日期等; 释放引用句柄 。 是一种低层函数。 3. 文件I/O举例1:以电子表格格式存储和读取数据 以嵌套的For循环构建一个二维随机数数组;平铺顺序结构第0帧中选用的“写入电子表格文件”的作用,是将二维数组转化为字符串,并以电子表格格式保存在文件中(命名并存在计算机的桌面上)

17、;而第1帧中使用的“读取电子表格文件”函数,则用来读取所存文件(按名字)中以电子表格格式存储的字符串,并将其转换成二维数组格式,再经显示器输出。 “函数”选板 - “编程”- “文件 I/O”,以找到上述2函数。 通常情况下,文件I/O高层操作函数High-level VIs可满足对文件操作的需求,但运行效率较低。例如,当用户连续采集并保存数据时,如果使用高层操作函数,就需要反复进行打开文件、写入数据、关闭文件的操作。而若利用低层操作函数Low-level VIs,就可以只在开始时打开一次文件,之后多次写入数据(采集并保存),最后进行一次文件的关闭操作即可。因此,当需要连续向文件中写入数据时,建议使用低层操作函数Low-level VIs。具体见下例。 关于文件I/O高层函数与低层函数的使用 3. 文件I/O举例2:使用Low-level Vis 进行文件写操作 路径: “查找范例”“目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论