部署扫描接口应用程序时发生错误-65536或-65589

更新 Oct 28, 2020

适用于

软件

  • LabVIEW
  • LabVIEW Base
  • LabVIEW Full
  • LabVIEW Professional
  • LabVIEW Real-Time Module

问题详述

我正在开发一个使用扫描接口的独立LabVIEW Real-Time应用程序,但是每当尝试部署该应用程序时,都会出现以下错误:
  • 错误-65536:Occurred at Shared Variable in XXX.vi
  • 错误-65589:Occurred at Shared Variable in XXX.vi
 
即使我没有使用共享变量也会发生,为什么也会发生这些错误?

解决方案

使用扫描接口开发应用程序时,扫描引擎不会立即在目标上加载。如果实时应用程序在扫描引擎运行之前尝试访问输入或输出,将抛出错误-65536错误-65589,并且该应用程序将关闭。

有几种方法可以解决此问题:
  • 在应用程序的初始化阶段引入固定的延迟,该延迟将等待长达10秒,然后才能尝试访问任何输入或输出。
  • 开发一个简单的VI,该VI将读取输入变量,并在while循环中检查从I / O节点发出的错误。仅当错误代码同时不等于-65536或-65589或经过了定义的时间量(以避免无限迭代)时,才停止while循环。下面是此实现的示例。