实验报告四

更新时间:2024-03-31 20:09:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

ZHOUUNIV

RSEITY CHANGChangzhou University

虚拟仪器设计技术

实验报告

(信息科学与工程学院)

学 院: 怀德学院 学生姓名: 梁海瑞 专业班级: 电子141 学号: 144460120 实验名称: 字符串和文件I/O 2016 ~ 2017 学年 第 1 学期 第 4 次实验 实验日期:2016 .11 28 指导教师 焦竹青 成 绩: 评阅教师: 焦竹青

信息科学与工程学院电子信息技术实验中心

教 务 处

一、实验目的:

1、通过实验掌握字符串的创建和属性设置,学习字符串函数的使用。 2、熟悉文件输入和输出操作,能将数据以电子表格式度写文件。 3、掌握读写记录文件、波形文件

二、实验仪器:

PC机LabVIEW软件

三、实验原理:

1、字符串是ASCII字符的集合,这些字符有些是可显示的,有些是不可显示的。在仪器控制中,常常需要将数值型数据转换成字符串,按照字符串的格式进行传送,而处理数据时,又需要将这些字符串转换为数值型数据进行操作。在文件中读、写数据也需要使用字符串,所以灵活的掌握应用字符串对编程是非常重要的。

2. 字符串控件:在控件面板的“字符串与路径”子选板上可以找到字符串输入控件、字符串显示控件、组合框、树形、表格和Express表格等字符串控件。字符串输入和字符串显示这两个控件用于实现最基本的字符串操作功能。组合框中可以有多个字符串,每个字符串称为一个“项”,并对应一个值,每个条目对应的值可以在“属性”的“编辑项”中设置。字符串的显示方式有4钟不同的显示:正常显示、密码显示、十六进制显示和“\\”代码显示。字符串函数位于功能模板的String子模板中,提高对字符串进行各种处理。

3. 文件输入/输出(I/O)操作用于向磁盘存储数据或从磁盘读取数据。文件操作包括3个步骤:打开现存文件或创建一个新文件;写入或读取文件;关闭文件。根据文件组织格式,LabVIEW支持4种文件类型,分别是ASCII码的流的文本文件、二进制流文件、数据记录文件和波形数据文件。 4. LabVIEW提供文件I/O操作的VI和函数,在功能模板的File I/O子模板中,利用这些函数可以进行文件的打开和关闭、文件的读与写、创建新文件、删除、移动文件等。 5. File I/O子模板分为3个层次,即高层文件函数、中层文件函数和高级文件函数。

(1)高层文件函数位于子模板顶端,这些节点调用一次,即可完成依次完整的文件I/O操作,包括打开或创建文件、在文件中读数或写入数据、关闭文件。高层文件具有使用上的方便性,但不具备低层节点操作的灵活。

(2)中层文件函数节点位于子模板第二行,是常用的节点,提供了比高层文件节点更灵活的功能。但中层节点一次只能执行一种文件操作,例如文件的打开操作。

(3)高级文件函数是文件I/O的底层函数,这些内建的函数可以处理LabVIEW文件I/O操作中的细节问题,具有很大的灵活性,定位于子模板的第三行的高级文件函数选项。

四、实验内容:

练习1、创建一个字符串显示控件,程序运行后,显示当前系统日期、时间及任意输入的学生班级

和姓名。

练习2,程序开始运行后,用户点击“登录”按钮,跳出消息要求用户输入密码,密码正确时,开始

输入“姓名”、“年龄”、“身高”、“体重”4个参数,要求输出字符串:我叫“姓名”,今年“年龄”岁,我的身高是“身高”厘米,体重是“体重”公斤。如果密码错误则显示字符串“密码错误”,点击“退出”按钮,用户可退出程序。(用事件实现)

练习3.创建一个tempwrite.vi文件实现写文件,使用For循环采集温度值,且波形显示,并将测

温数据以ASCC格式存储到一个文中。在每次循环求期间,将数据转换为字符串,添加一个逗号作为分隔符,将字符串添加到文件中,并记录下每次采集的时间。再创建一个tempread.vi文件对温度值的读数据 ,同时显示波形。

五、实验分析结果:

练习1、创建一个字符串显示控件,程序运行后,显示当前系统日期、时间及任意输入的学生班级

和姓名。

在All Functions-Structures子模板上选择While循环图标,放置于框图程序编辑窗口在功能 板的子模板上加上String Control&Indicator控件,在前面板上设置所要求的信息,并将其与

相连,输出学生姓名与学号;在前面板上创建一个Combo Box控件、一个String控件; 然后在Combo Box上右键弹出快捷菜单,选择Edit Items,进行设计,设置所需要的信息; 为了方便观察,添加入时间延迟,延迟时间

;在后面板连线,运行。

运行结果:

练习2,程序开始运行后,用户点击“登录”按钮,跳出消息要求用户输入密码,密码正确时,开始输入“姓名”、“年龄”、“身高”、“体重”4个参数,要求输出字符串:我叫“姓名”,今年“年龄”岁,我的身高是“身高”厘米,体重是“体重”公斤。如果密码错误则显示字符串“密码错误”,点击“退出”按钮,用户可退出程序。(用事件实现) 如下图所示:

在All Functions-Structures创建一个While循环结构,运用事件结构,以确保结构执行时,仅有一个子程序或分支在执行;采用Case结构,进行登录成功或失败的选择,输出不同的结果; 加入字符控件,命名为密码,并使其与字符“123456”相连,使其相等,以此来设定密码; 在Ture面板上,依次加入四个字符串,分别命名为“学生姓名”重”

、“年龄”、“身高”

、“体

;在False面板上,添加字符串“密码错误”,在事件结构的推出选项中,添加“退出”控

件,进行退出;再创建一个由数值型常量,字符串常量组成的混合常量;输入的账号和密码与所给的数值相同就运行此分支,输入姓名,年龄,身高,体重,在簇中显示;运行。

运行结果:

密码错误时:

密码正确时:

练习3.创建一个tempwrite.vi文件实现写文件,使用For循环采集温度值,且波形显示,并将测温数据以ASCC格式存储到一个文中。在每次循环求期间,将数据转换为字符串,添加一个逗号作为分隔符,将字符串添加到文件中,并记录下每次采集的时间。再创建一个tempread.vi文件对温度值的读数据

,同时显示波形。先创建一个电子表格文件并保存;

在All Functions-Structures创建一个While循环结构,该节点将任意维数的数组转换为电子表格字符串

;该节点将读出的数值转换为格式化浮点数字字符串

;该VI可以把一个字符串写入

一个新文件或添加到一个已存在的文件中;本程序每50ms执行一次温度采集,将采样值送Char

显示,同时将采样值经Format Into String节点转化为保留2位小数并以“,”作为分隔符的格式化字符串;该字符串送入写字符串文件节点保存,保存时刻建立一个新文件保存,若已存在这个文件,则将本次采样数据追加在原文件后。采样点数由前面板上的控件设定。运行,观察结果。

运行结果:

练习3.创建一个tempwrite.vi文件实现写文件,使用For循环采集温度值,且波形显示,并将测温数据以ASCC格式存储到一个文中。在每次循环求期间,将数据转换为字符串,添加一个逗号作为分隔符,将字符串添加到文件中,并记录下每次采集的时间。再创建一个tempread.vi文件对温度值的读数据

,同时显示波形。先创建一个电子表格文件并保存;

在All Functions-Structures创建一个While循环结构,该节点将任意维数的数组转换为电子表格字符串

;该节点将读出的数值转换为格式化浮点数字字符串

;该VI可以把一个字符串写入

一个新文件或添加到一个已存在的文件中;本程序每50ms执行一次温度采集,将采样值送Char

显示,同时将采样值经Format Into String节点转化为保留2位小数并以“,”作为分隔符的格式化字符串;该字符串送入写字符串文件节点保存,保存时刻建立一个新文件保存,若已存在这个文件,则将本次采样数据追加在原文件后。采样点数由前面板上的控件设定。运行,观察结果。

运行结果:

本文来源:https://www.bwwdw.com/article/ezmr.html

Top