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

更新 Jul 30, 2026

适用于

硬件

  • CompactRIO Chassis

软件

  • LabVIEW

驱动

  • NI-Serial
  • NI-VISA

问题详述

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

错误-1073807343发生于 VISA配置串口.vi-> Basic Serial Write and Read.vi的属性节点(arg1)

可能的原因:

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


解决方案

当计算机无法与它正在发送命令的设备正确通信时,就会发生此错误。请按照以下步骤解决此错误:

 

  • 确保您在系统中安装了 NI-VISA and NI-Serial 。
    • 开发系统:验证您所需的驱动已经安装并出现在NI MAX中我的系统>>软件中。若尚未安装的话,请为您的硬件设备下载并安装正确的驱动程序(可参见驱动版本ReadMe中的支持的设备)
    • 实时系统部署: 验证您所需的驱动在远程系统>>[您的目标设备]>>软件。如果没有在目标设备上安装,请在目标设备上安装。
  • 验证仪器的地址是否正确。
    • 检查地址字符串是否符合正确的语法。
    • 检查您是否使用了正确的端口号。
    • 检查资源位于: 
    • 如果您当前正在使用 VISA 别名,请尝试使用 VISA 资源名称
      • 例如:使用资源名称, ​ASRL3::INSTR,而不是别名 "COM3"
    • 如果您正在部署应用程序,请以编程方式检索 VISA 资源名称。

注: 应用程序在某台电脑上运行正常,将程序移至另一台不同系统环境的电脑上则出错,这会是个常见的原因,因为资源名称可能发生变化。此时推荐使用NI MAX或是应用程序中看到的最新VISA资源名称进行测试。

 

  • 确认您按正确顺序打开和关闭驱动会话。
  • 使用适配器,隔离器,或者集线器: 尝试使用直连,或者不同的适配器,隔离器或者集线器。
  • cRIO在混合模式下使用NI 987x: If 如果您打算在实时系统VI中使用打开FPGA引用和运行方法,以编程方式加载和运行FPGA VI,确保在FPGA VI开始运行和串口通信被NI VISA VI打开的时刻预留一个合适的延时(至少两秒)。这会保证所需的中间层已经建立并且在尝试建立通信之前运行。
  • 如果问题仅在以管理员身份运行LabVIEW时出现,则这个VI文件很可能已损坏。请查看LabVIEW VI 已损坏
  • 在实时启动应用程序中使用多个 VISA 资源时,尝试在代码开头添加延迟,然后再调用任何 VISA 资源,以确保系统能够识别所有资源。
  • 在某些情况下,可以通过显式声明使用 VISA 资源来解决此错误,即使用VISA打开函数,而不是直接将 VISA 资源的输入控件(或常量)连接到其他 VISA 函数。