主页
技术支持
NI-VISA错误-1073807246无法访问资源
NI-VISA错误-1073807246无法访问资源
更新 Dec 28, 2022
适用于
“适用于”表示本页面提供的解决方案已被证实适用于列出的产品。该方案或同样适用于类似产品或应用。
硬件
CompactRIO Controller
Serial Interface Device
PXI Serial Interface Module
C Series Serial Interface Module
USB Cable
软件
LabVIEW
驱动
NI-VISA
问题详述
我正在尝试与我的第三方工具通信。 VISA测试面板在NI MAX中可以正常工作,但在使用VISA示例VI时出现以下错误。
-1073807246:资源有效,但VISA当前无法访问它。
为什么我会收到此错误,如何消除它?
我在使用串口兼容性VI时遇到
错误37:找不到设备
。我该如何解决错误?
解决方案
您可能在LabVIEW开发环境中以及从构建的可执行文件中获得此错误。这表明LabVIEW无法控制串口。
以下是可能的原因以及这些错误的解决方案:
其它程序已经控制了该串口。一次只能是一个程序控制串口资源。关闭所有其他控制串口的程序,譬如Hyperterminal或任何NI MAX VISA测试面板。通过导航到
Tools -> Options -> Environment
并勾选“自动关闭VISA会话句柄”,在LabVIEW中自动关闭VISA会话句柄。
如果在打开LabVIEW的同时运行LabVIEW可执行程序,可能LabVIEW已经控制了串口资源。在LabVIEW里使用串口操作VI后默认是不释放串口资源的。LabVIEW可以继续运行其他控制串口操作的VI,但是执行程序不可以。为了释放串口资源,必须执行下面操作的其中一个:
关闭LabVIEW。仅关闭所有使用串口操作的VI是不够的。通过完全关闭LabVIEW,您可以强制关闭LabVIEW打开的所有会话。
使用
VISA Advanced
选板中的
VISA Close VI
。
如果您使用的是
串行
转换器或已构建自定义串行转换器,请确保已正确连接串行端口线 。
文件
serpdrv
不可用(仅适用于LabVIEW 6.1及更早版本的串行兼容VI)。
从LabVIEW运行VI时,serpdrv应该位于
libdir
指定的路径(通常是
National Instruments \ LabVIEW \
)
当运行LabVIEW执行程序时,在之前路径下有serpdrv的同时,也将在可执行程序路径或运行引擎相同路径生成serpdrv。公共的运行引擎路径是:
National Instruments \ Shared \ LabVIEW Run-Time
对于可执行文件,拷贝位于可执行文件夹的
labview.ini
文件(位于
Program Files\National Instruments\LabVIEW 20[XX]\LabVIEW.ini
)
。用
可执行程序名称重命名文件(name.ini),并且将配置文件的第一行[LabVIEW]改为[name].
检查操作系统(OS)和NI-VISA驱动程序的兼容性。这可以在您的NI-VISA版本的自述文件中找到。如果您的NI-VISA版本与您的操作系统不兼容,则可能导致错误,您需要升级驱动程序。
如果驱动程序由于本身问题而未正确识别COM端口,也会发生此错误。尝试
强制重新安装
NI-VISA。
相关信息
这些解决方案还有助于解决使用串口兼容性VI时出现的
错误37:未找到设备
。这些VI已被弃用,因此错误仅在此处作为注释提及。如果在NI MAX中收到相同的错误消息,或者有其他故障排除步骤,请参阅
MAX显示感叹号中标题为COM Port
的文章。
如果您使用的是CompactRIO,则这是由启用Console Out引起的。请检查cRIO的启动设置或拨动开关。
相关链接
Error -37 When Using the Serial Compatibility VIs
Console Out on cRIO, sbRIO and cFP Controllers
其他支持选项
询问NI社区
在我们的论坛中与其他用户协作
搜索NI社区以寻求解决方案
请求工程师的支持
可能需要有效的服务协议,支持选项因国家/地区而异。
打开服务请求
购买或续订支持服务
Was this information helpful?
Helpful
Not Helpful