第07次课 abVIEW与其它应用程序的通讯.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程名称:虚拟仪器技术 任课教师:林青松 重点 难点 思考题 12.1 C代码调用 在LabVIEW中提供了一个C代码调用的接口,即Advanced函数子模板中的代码接口节点(CIN-Code Interface Node) 下面举例说明:假设有两数相加,调用CIN节点求其和,方法步骤如下: 调用CIN节点-方法步骤 在后面板调出CIN节点,增加参数端口(其中2个为输入输出,1个为输出) 连接2个加数(输入输出)与和(仅输出) 在CIN节点上单击鼠标右键,弹出菜单,选择Creat.c File,如下图所示: 前面板和后面板 自动产生的C代码如下 /* * CIN source file */ #include extcode.h CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_); CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_) { /* ENTER YOUR CODE HERE */ return noErr; } 编写C代码 进入VC++开发环境 打开LabVIEW自动产生的C代码文件 在/* ENTER YOUR CODE HERE */处添加以下代码:*_=*_1+*_2; 编辑完成,关闭文件 编辑后的C代码 /* * CIN source file */ #include extcode.h CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_); CIN MgErr CINRun(float64 *_1, float64 *_2, float64 *_) { /* ENTER YOUR CODE HERE */ *_=*_1+*_2; return noErr; } 编译VC++6.0源程序 在VC++6.0中创建一个空的Win32 Dynamic DLL project 在DLL工程中加入自己编写的实现两数相加的C代码 在DLL工程中加入CIN对象和函数库:加入CINTOOLS路径下的cin.obj、labview.lib、lvsb.lib、lvsbmain.def共4个文件 编译VC++6.0源程序 在DLL工程中加入CINTOOLS路径:选择工程-设置,将Setting For设为ALL Configuration;选择C/C++分页,设分类为Preprocessor,在附加包含路径文本框中输入CINTOOLS路径。例如C:\Program Files\National Instruments\LabVIEW 6.1\cintools 加入CINTOOLS路径 编译VC++6.0源程序 Alignment和run-time library设置:选择工程-设置,将Setting For设为ALL Configuration;选择Code Generation分页,在Struct member alignment列表框中选1 Byte,在Use run-time library列表框中选Mutithreaded DLL,如下图: Alignment和run-time library设置 编译VC++6.0源程序 创建LSB源文件: 将CINTOOLS路径下的lvsbutil.exe拷贝到C盘根目录。 选择工程-设置,将Setting For设为ALL Configuration;选择Custom Build页,在命令文本框中输入:c:\lvsbutil $(TargetName) -d $(WkspDir)\$(OutDir),在输出文本框中输入:$(OutDir)$(TargetName).lsb。如下图: 创建LSB源文件 编译VC++6.0源程序 编译DLL,生成.lsb 文件。生成的.lsb文件在工程目录的Debug文件夹中。 装载lsb文件 在CIN节点上单击鼠标右键,弹出菜单,选Load Code Resource,弹出选择文件对话框后选中编译完成的lsb文件,此时工具条上的运行按钮由断开的状态变为完整,表示程序可以正确操作。 运行结果 变量名说明 前面板的变量名与C代码的变量名可以不同,但数据类型必须相同。 在自动产生C代码前,前面板的变量名应避免采用中文名,在自动产生C代码后,可将前面板的变量名改为中文名。 CIN节点的用途 提供了LabVIEW与VC++语言的接口,可用于底层驱动程序的开发,如对于国产的低价位的板卡或自行设计的板卡,可利用CIN开发相应的设备驱动程序。 12.2 库函数调用 LabVIEW在Advanced函数模板中提供了调用库函数节点(Calling Libr

文档评论(0)

638922bb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档