我如何使用LabVIEW PDA在我的Pocket PC上调用外部代码



主要软件:
主要软件版本: 7.0
主要软件修正版本:
次要软件: N/A

问题: 我希望能够在我的Pocket PC上使用LabVIEW调用外部代码,我如何在Call Library Function Node来调用此外部代码?

解答: 在Pocket PC上使用LabVIEW PDA调用外部代码同在Windows下使用LabVIEW调用外部代码十分相似。有几点略微不同因为该外部代码是为PDA所使用的。一共需要四个文件,分别为LabVIEW VI, Windows stub dll, Pocket PC所使用的.dll 文件,以及从.lib文件创建Pocket PC所使用的.dll 文件的.c文件.

LabVIEW需要一个叫做”stub dll”的文件,用于正确的将Call Library Function Node和终端相连。这个stub dll是一个win32的dll,具有一个正确的函数原型用来导出您想使用的函数。Stub dll并不需要具备一个被调用的实际的代码,因为有效的代码将会在创建过程中从.c或者是.lib文件中引入。Stub dll可以通过任何编译器创建,包括LabWindows/CVI,MSVC++。如果使用C++的编译器,stub dll 中的函数将以extern "C"的形式被申明,以保证函数名在编译的时候不会出现轧名的现象。

需要一个专为Pocket PC p平台所使用的.dll文件,该文件可由Microsoft Embedded Visual Tools来创建,该免费软件可从微软主页下载,如果您在计算机上已经安装了LabVIEW PDA for Pocket PC module,那么该软件也已经被安装完毕。该dll包含了Pocket PC设备所需要执行的代码。该函数中所包含的函数应同LabVIEW中调用的stub dll相同。该文件的输出函数同样需要以extern "C"的形式被申明,以保证不会出现轧名的现象,否则在stub dll中定义的函数和在Pocket PC dl中定义的函数无法一一对应而导致无法正确的连接。同LabVIEW在调用dll时使用调用节点函数不同的是,为Pocket PC 平台所使用的代码来自于.c 或者 .lib文件。.lib文件将在dll文件被编译的时候创建,该文件在PDA创建VI的时候将被使用。

如果你已经拥有一个stub dll,一个Pocket PC dll,还有一个Pocket PC的.c 或者 .lib文件,剩下的工作就是使用LabVIEW 的VI调用这个节点了。在LabVIEW的PDA模块中,您可以选择Call Library Node,并且配置stub dl文件以正确的函数和参数,这同在windows操作系统中进行配置的过程是完全相同的。在PDA上运行VI文件,就必须将VI创建成为一个在PDA上可使用的EXE文件,您可以选择Tools»Build for PDA并且点钟添加文件按钮,打开对话框添加.c 或者 .lib文件。该可执行文件一旦被编译成功就会被下载到PDA上,不过在该文件运行前,Pocket PC 的dll文件必须拷贝到设备的Windows目录下。

下面有几个例子调用外部代码的例子是在LabVIEW PDA下模块运行的。

相关链接:

附件:





报告日期: 11/13/2003
最近更新: 11/16/2007
文档编号: 33CARIQS