找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1823|回复: 3

求助!!!labview调用matlab的dll文件出现报错~~请高手帮忙~~谢谢!!!

[复制链接]
gaga198466 该用户已被删除
发表于 2008-7-28 18:16:12 | 显示全部楼层 |阅读模式
将matlab的m文件编译成dll文件,并用labview调用此dll文件,运行程序时出现下述报错
    “LabVIEW: 调用库函数节点调用的外部节点中出现一个意外。可能引起LabVIEW内存损坏。在新位置保存工作并重启LabVIEW。”
   
    检查了输入输出参数设定,并没有错误。m文件在matlab中也能正常运行。不知报错是什么原因??请高手帮助解答~谢谢!!!
发表于 2008-7-29 09:55:16 | 显示全部楼层
帮你顶下~~~不过你还是先把代码附上来
回复 顶

使用道具 举报

gaga198466 该用户已被删除
 楼主| 发表于 2008-7-29 10:13:18 | 显示全部楼层
好的~
这是m文件的代码
function y=case1(x)
y=x+1;

这是封装dll文件的代码
mbuild -setup
Please choose your compiler for building standalone MATLAB applications:

Would you like mbuild to locate installed compilers [y]/n? y

Select a compiler:
[1] Lcc C version 2.4 in D:\APPLICATION\MATLAB\sys\lcc
[2] Microsoft Visual C/C++ version 7.1 in D:\Application\vs2003

[0] None

Compiler: 2

Please verify your choices:

Compiler: Microsoft Visual C/C++ 7.1
Location: D:\Application\vs2003

Are these correct?([y]/n): y

Try to update options file: C:\Documents and Settings\gaga\Application Data\MathWorks\MATLAB\R14\compopts.bat
From template:              D:\APPLICATION\MATLAB\BIN\WIN32\mbuildopts\msvc71compp.bat

Done . . .


--> "D:\Application\matlab\bin\win32\mwregsvr D:\Application\matlab\bin\win32\mwcomutil.dll"

DllRegisterServer in D:\Application\matlab\bin\win32\mwcomutil.dll succeeded

--> "D:\Application\matlab\bin\win32\mwregsvr D:\Application\matlab\bin\win32\mwcommgr.dll"

DllRegisterServer in D:\Application\matlab\bin\win32\mwcommgr.dll succeeded

>> mcc -W cpplib:libcase1 -T link:lib case1

  To get started, select MATLAB Help or Demos from the Help menu.

Warning: No matching builtin function available for D:\Application\matlab\toolbox\simulink\simulink\set_param.bi

然后在labview的调用函数库节点调用libcase1.dll文件
函数库节点库名或路径为:D:\Application\matlab\work\case1\libcase1.dll
函数名为:case1
函数原形为:void  case1(int32_t x, int32_t y);
用一个数值输入控件作为x
一个数值输出控件作为y
labview左上放的运行按钮显示可运行,但运行后就会报错:

错误1097发生于 case1.vi中的调用库函数节点,可能原因
LabVIEW:  调用库函数节点调用的外部节点中出现一个意外。意外可能引起LabVIEW内存损坏。在新位置保存工作并重启LabVIEW。

希望大家帮帮忙!!万分感谢!!!
回复 顶

使用道具 举报

发表于 2008-7-29 14:14:21 | 显示全部楼层
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-30 04:06 , Processed in 0.022432 second(s), 8 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表