首页 理论教育LabVIEW2012中文版虚拟仪器串行通信节点使用详解

LabVIEW2012中文版虚拟仪器串行通信节点使用详解

【摘要】:LabVIEW中用于串行通信的节点实际上是VISA节点,为了方便用户使用LabVIEW将这些VISA节点单独组成一个子选板,包括8个节点,分别实现配置串口、串口写入、出口读取、关闭串口、检测串口缓冲区和设置串口缓冲区等。10表示停止位为1位,15表示停止位为1.5位,20表示停止位为2位。图11-11 VISA清空I/O缓冲区的节点图标及端口定义屏蔽:指明要清空的缓冲区。

LabVIEW中用于串行通信的节点实际上是VISA节点,为了方便用户使用LabVIEW将这些VISA节点单独组成一个子选板,包括8个节点,分别实现配置串口、串口写入、出口读取、关闭串口、检测串口缓冲区和设置串口缓冲区等。这些节点位于函数选板>>“数据通信”>>“协议”>>“串口”子选板中,如图11-3所示。

串行通信节点的使用方法比较简单,且易于理解,下面对各节点的参数定义、用法及功能进行介绍。

1.VISA配置串口

初始化、配置串口。用该节点可以设置串口的波特率、数据位、停止位、奇偶校验位、缓存大小以及流量控制等参数。其图标及端口定义如图11-4所示。

978-7-111-40983-0-Chapter11-3.jpg

图11-3 串口子选板

978-7-111-40983-0-Chapter11-4.jpg

图11-4 VISA配置串口图标及端口定义

启用终止符:串行设备做好识别终止符的准备。

终止符:通过调用终止读取操作。从串行设备读取终止符后读取操作将终止。0xA是换行符(\n)的十六进制表示。将消息字符串的终止符由回车(\r)改为0xD。

超时:设置读取和写入操作的超时值。

VISA资源名称:指定了要打开的资源。该控件也指定了会话句柄和类。

波特率:传输率。默认值为9600。

数据比特:输入数据的位数。数据比特的值介于5和8之间。默认值为8。

奇偶:指定要传输或接收的每一帧所使用的奇偶校验。默认为无校验。

错误输入:表示VI或函数运行前发生的错误情况。默认值为无错误。

停止位:指定用于表示帧结束的停止位的数量。10表示停止位为1位,15表示停止位为1.5位,20表示停止位为2位。

流控制设置传输机制使用的控制类型。

VISA资源名称输出:VISA函数返回的VISA资源名称的一个副本。

错误输出:包含错误信息。如错误输入表明在VI或函数运行前已出现错误,错误输出将包含相同的错误信息。否则,它表示VI或函数中产生的错误状态。

2.VISA串口字节数

该属性用于返回指定串口的输入缓冲区的字节数。其图标如图11-5所示。

串口字节数属性用于指定该会话句柄使用的串口的当前可用字节数。

3.VISA关闭

关闭VISA资源名称指定的设备会话句柄或事件对象。该函数采用特殊的错误I/O操作。无论前次操作是否产生错误,该函数都将关闭设备会话句柄。打开VISA会话句柄并完成操作后,应关闭该会话句柄。该函数可接受各个会话句柄类。VISA关闭节点的图标及端口定义如图11-6所示。

978-7-111-40983-0-Chapter11-5.jpg

图11-5 VISA串口字节数图标

978-7-111-40983-0-Chapter11-6.jpg

图11-6 VISA关闭节点的图标及端口定义

4.VISA读取

从VISA资源名称所指定的设备或接口中读取指定数量的字节,并将数据返回至读取缓冲区。根据不同的平台,数据传输可为同步或异步。右键单击节点并从快捷菜单中选择“同步I/O模式”>>“同步”可同步读取数据。该操作仅当传输结束后才返回。VISA读取的节点图标及端口定义如图11-7所示。(www.chuimin.cn)

978-7-111-40983-0-Chapter11-7.jpg

图11-7 VISA读取节点的图标及端口定义

字节总数:包含要读取的字节数量。

读取缓冲区:包含从设备读取的数据。

返回数:包含实际读取的字节数量。

5.VISA写入

将写入缓冲区的数据写入VISA资源名称指定的设备或接口。根据不同的平台,数据传输可为同步或异步。右键单击节点并从快捷菜单中选择“同步I/O模式”>>“同步”可同步写入数据。该操作仅当传输结束后才返回。VISA写入的节点图标及端口定义如图11-8所示。

978-7-111-40983-0-Chapter11-8.jpg

图11-8 VISA写入的节点图标及端口定义

写入缓冲区:包含要写入设备的数据。

返回数:包含实际写入的字节数量。

6.VISA串口中断

发送指定端口上的中断。将制定的输出端口中断一段时间(至少250ms),该时间由“持续时间”指定,单位为毫秒。VISA串口中断的节点图标及端口定义如图11-9所示。

978-7-111-40983-0-Chapter11-9.jpg

图11-9 VISA串口中断的节点图标及端口定义

持续时间:中断的长度(毫秒)。VI运行时,该值暂时覆盖VISA Serial Settings:Break Length属性的当前设置。此后,VI将把其当前设置返回到初始值。该属性的默认值为250ms。

7.VISA设置I/O缓冲区大小

设置I/O缓冲区大小。如需设置串口缓冲区大小,须先运行VISA配置串口VI。VISA设置I/O缓冲区大小的节点图标及端口定义如图11-10所示。

978-7-111-40983-0-Chapter11-10.jpg

图11-10 VISA设置I/O缓冲区大小的节点图标及端口定义

屏蔽:指明要设置大小的缓冲区。屏蔽的有效值是I/O接收缓冲区(16)和I/O传输缓冲区(32)。添加屏蔽值可同时设置两个缓冲区的大小。

大小:指明I/O缓冲区的大小。大小应略大于要传输或接收的数据数量。如激活函数而没有指定缓冲区大小,VI将设置默认值为4096。如未激活函数,默认值将取决于VISA和操作系统。

8.VISA清空I/O缓冲区

清空由屏蔽指定的I/O缓冲区。VISA清空I/O缓冲区的节点图标及端口定义如图11-11所示。

978-7-111-40983-0-Chapter11-11.jpg

图11-11 VISA清空I/O缓冲区的节点图标及端口定义

屏蔽:指明要清空的缓冲区。按位合并缓冲区屏蔽可同时清空多个缓冲区。逻辑OR,也称为OR或加,用于合并值。接收缓冲区和传输缓冲区分别只用一个屏蔽值。见表11-1。

表11-1 屏蔽值表

978-7-111-40983-0-Chapter11-12.jpg