LabVIEW中用于串行通信的节点实际上是VISA节点,为了方便用户使用LabVIEW将这些VISA节点单独组成一个子选板,包括8个节点,分别实现配置串口、串口写入、出口读取、关闭串口、检测串口缓冲区和设置串口缓冲区等。10表示停止位为1位,15表示停止位为1.5位,20表示停止位为2位。图11-11 VISA清空I/O缓冲区的节点图标及端口定义屏蔽:指明要清空的缓冲区。......
2023-11-26
要将数据写入文本文件,必须将数据转化为字符串。
由于大多数文字处理应用程序读取文本时并不要求格式化的文本,因此将文本写入文本文件无需进行格式化。如需将文本字符串写入文本文件,可用写入文本文件函数自动打开和关闭文件。
由于文字处理应用程序采用了“文件I/O”VI无法处理的字体、颜色、样式和大小不同的格式化文本,因此从文字处理应用程序中读取文本可能会导致错误。
如需将数字和文本写入电子表格或文字处理应用程序,使用字符串函数和数组函数格式化数据并组合这些字符串。然后将数据写入文件。
格式化写入文件函数可将字符串、数值、路径和布尔数据格式化为文本,并将格式化以后的文本写入文件。该函数可一次实现多项操作,而无需先用格式化写入文件函数格式化字符串,然后用写入文本文件函数将结果字符串写入文件。
扫描文件函数可扫描文件中的文本获取字符串、数值、路径和布尔值并将该文本转换成某种数据类型。该函数可一次实现多项操作,无需先用读取二进制文件或读取文本文件函数读取数据,然后使用扫描字符串将结果扫描至文件。
例8-1:文本文件的写入。
新建一个VI,在程序的程序框图新建一个循环次数为200的For循环。
在For循环中用余弦函数产生余弦数据。
使用格式化写入字符串函数(位于函数选板>>“字符串”子选板中)按照小数点后保留四位的精度将余弦数据转换为字符串。
将转换为字符串后的数据,索引成为一个数组,一次性存储在D盘根目录下的data文件中。
实例的程序框图如图8-112所示。
运行程序,可以发现在D盘根目录下生成了一个名为data的文件,使用Windows的记事本程序打开这个文件,可以发现记事本中显示了这200个余弦数据,每个数据的精度保证了小数点后有4位,如图8-113所示。
可以使用Microsoft Excel电子表格程序打开这个数据文件,绘图以观察波形,如图8-114所示,可以看到图中显示了数据的余弦波形。
图8-112 程序框图(www.chuimin.cn)
图8-113 程序存储的余弦数据
图8-114 用存储在文本文件中的数据在Microsoft Excel中绘图
从本实例中可以发现,使用写入文本文件VI可以将文本文件存储称为电子表格文件的格式,也就是说这个实例揭示了电子表格文件其实是一种特殊的文本文件,用写入文本文件VI存储的文件同样可以为Microsoft Excel这样的电子表格处理软件打开并编辑。
例8-2:文本文件的读取。
文本文件的读取由读取文本文件VI来完成,本实例演示读取文本文件VI的使用方法。
文本文件的读取演示程序的程序框图如图8-115所示。程序中,读取文本文件VI有两个重要的输入数据端口,分别是文件和计数。两个数据端口分别用以表示读取文件的路径、文件读取数据的字节数(如果值为-1,则表示一次读出所有数据)。在实例中,读取文本文件VI读取D盘根目录下的data文件,该文件中的数据由实例8-1的程序存入,并将读取的结果在文本框中显示出来。程序的前面板及运行结果如图8-116所示。
可见,用读取文本文件VI可以将文本文件中的数据以字符串的格式读出,并作为一个字符串来存储。
由于计算机中的数据都是二进制格式来存储的,因而无论在将字符串存储为文本文件,还是从文本文件读取字符串,都要经过二进制格式到文本格式的数据类型转换,这将消耗时间和系统资源,因而对于数据量大,要求存储,读取效率高的场合,文本文件往往是不适用的,这时更为合适的文件格式是二进制文件。
图8-115 程序框图
图8-116 程序前面板
有关LabVIEW 2012中文版虚拟仪器从入门到精通的文章
LabVIEW中用于串行通信的节点实际上是VISA节点,为了方便用户使用LabVIEW将这些VISA节点单独组成一个子选板,包括8个节点,分别实现配置串口、串口写入、出口读取、关闭串口、检测串口缓冲区和设置串口缓冲区等。10表示停止位为1位,15表示停止位为1.5位,20表示停止位为2位。图11-11 VISA清空I/O缓冲区的节点图标及端口定义屏蔽:指明要清空的缓冲区。......
2023-11-26
同步组将在程序执行完毕前始终保持活动状态。如要向一个同步组添加一个已属于另一同步组的定时结构,LabVIEW将把该定时结构从前一个组中移除,添加到新组。中止定时结构的执行,使用定时结构停止VI可通过程序中止定时结构的执行。将字符串常量或控件中的结构名称连接至定时结构停止VI的名称输入端,指定需要中止的定时结构的名称。例如,以下程序框图中,低定时循环含有定时结构停止VI。......
2023-11-26
在图7-34的右图中,程序先让两组的输入输出在For循环的边框通道上形成数组,然后打包,用一个二维数组送到XY图中显示,这种方法比较直观。要求使用XY图绘制出两者随次数增加的变化曲线。图7-40 例7-2的程序框图图7-41 例7-2的前面板显示图7-42 例7-2错误的程序框图图7-43 例7-2错误的前面板显示对于前面板中的两个曲线的显示,可以在XY图的属性中自行设置,如图7-44所示。图7-44 XY图的图形属性......
2023-11-26
如图6-22和图6-23所示,分别求出了一个一维数组和一个二维数组的长度。图6-30 合并数组的前面板显示图6-31 一维数组排序函数的图标和端口如图6-32和图6-33所示,对一个已知一维数组进行升序和降序排列。图6-38 多维数组的索引的程序框图5.初始化数组初始化数组函数的节点图标及端口定义如图6-40所示。如图6-43所示,创建了一个元素为1,长度为3的一维数组。......
2023-11-26
图4-14 移动的对象位置4.改变对象的大小几乎每一个LabVIEW对象都有8个尺寸控制点,当对象操作工具位于对象上时,这8个尺寸控制点会显示出来,用对象操作工具拖动某个尺寸控制点,可以改变对象在该位置的尺寸,如图4-15所示。“取消锁定”的功能是解除对象的锁定状态。当用户已经编辑好一个VI的前面板时,建议用户利用“组合”或者“锁定”功能将前面板中的对象组合并锁定,防止由于误操作而改变了前面板对象的布局。......
2023-11-26
UDP用于执行计算机各进程间简单、低层的通信。图11-68 UDP子选板使用打开UDP函数,在端口上打开一个UDP套接字。UDP会保留为发送命令而指定的数据报的字节数。然而,鉴于UDP可靠性不如TCP,通常不会通过UDP发送大型数据报。例11-6:UDP通信实例。该例子使用UDP实现双机通信。图11-69和图11-70所示是实现UDP通信发送端的前面板和程序框图。UDP函数通过广播与单个客户端或子网上的所有计算机进行通信。......
2023-11-26
如果将字符串转换为数值,LabVIEW仅可以转换用于表示数值的字符串,而仍将其其余值保存为字符串。同样由于浮点算术运算可能存在四舍五入误差,因此浮点数不能作为选择器标签的值,若将一个浮点数连接到条件分支,LabVIEW将对其进行舍入到最近的偶数值。图5-26 求平方根的程序框图分支1图5-27 求平方根的程序框图分支2图5-28 显示错误LabVIEW的条件结构与其他语言的条件结构相比,简单明了,结构简单,不但相当于Switch语句,还可以实现if…......
2023-11-26
波形图用于将测量值显示为一条或多条曲线。如图7-2所示,使用波形图显示40个随机数的情况。图7-3 波形图的使用图7-4 波形图的使用波形图显示的每条波形,其数据都必须是一个一维数组,这是波形图的特点,所以要显示n条波形就必须有n组数据。本题的做法是同上一例类似,将形成的二维数组进行打包,然后送入波形。......
2023-11-26
相关推荐