进行VISA读/写到串行端口时出现错误-1073807343

更新 Mar 19, 2024

适用于

硬件

  • CompactRIO Chassis

软件

  • LabVIEW

驱动

  • NI-Serial
  • NI-VISA

问题详述

我试图在LabVIEW中进行VISA串行读/写,但是当我尝试运行我的代码时,我间歇性地收到错误-1073807343:


错误-1073807343发生在VISA配置串行端口(Instr).vi->基本串行写入和读取的属性节点(arg1)中。六

可能的原因:
VISA:(Hex0xBFFF0011)位置信息不足或系统中不存在设备或资源。

 

解决方案

这可能是因为计算机上安装了多个版本的VISA驱动程序。所有驱动程序可能正在运行并与LabVIEW连接,这可能会导致问题。否则,可能是因为VISA资源名称不正确。
  • 确保您在系统中安装了 NI-VISA and NI-Serial 。
    • 开发系统验证您所需的驱动已经安装并出现在NI MAX中我的系统>>软件中。
      • 否则,为您的硬件设备下载并安装正确的驱动程序(可参见驱动版本ReadMe中的支持的设备
    • 实时系统部署: 验证您所需的驱动在远程系统>>[您的目标设备]>>软件。如果没有在目标设备上安装,请先安装
  • 验证您对仪器的寻址是否正确。
    • 检查资源: 
    • 如果您正在使用VISA Alias,尝试使用VISA资源名称。
      • 例如:使用资源名称,ASRL3::INSTR, 而不是"COM3"
    • 如果您正在部署应用程序,programmatically retrieve VISA resource name
      • 备注: 移动一个在某台电脑上运行正常的应用程序至另一台不同系统环境电脑上是个常见的原因。资源名称可能发生变化,并且如果有该错误出现,推荐使用NI MAX和应用程序中的VISA资源名称两者进行测试。
  • 验证您正确的打开和关闭驱动会话。
    • 在LabVIW中,在与设备进行通信之前,通常你会需要在LabVIEW中打开一个NI VISA的会话,并且一旦通信结束需要关闭这个会话。没有遵循这些步骤可能会导致该错误和与您设备进行通信的其他各种错误。详情如下:
  • 使用适配器,隔离器,或者集线器: 尝试使用直连,或者不同的适配器,隔离器或者集线器。
  • cRIO在混合模式下使用NI 987x: If 如果您打算在实时系统VI中使用打开FPGA引用和运行方法,以编程方式加载和运行FPGA VI,确保在FPGA VI开始运行和串口通信被NI VISA VI打开的时刻预留一个合适的延时(至少两秒)。这会保证所需的中间层已经建立并且在尝试建立通信之前运行。