新聞中心

EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > LabVIEW與C接口設(shè)計(jì)方法

LabVIEW與C接口設(shè)計(jì)方法

作者: 時(shí)間:2017-02-27 來源:網(wǎng)絡(luò) 收藏

  (2)把CIN的目標(biāo)文件和運(yùn)行庫添加到項(xiàng)目中。選擇菜單Insert

  FilesintoProject…。把文件…\StdCMD\StdCMD.c添加到項(xiàng)目中;文件把存放在子目錄…\Labview\Cintools\Win32下的文件cin.obj,labview.lib,lvsb.lib和lvsbmain.def添加到項(xiàng)目中。這些文件對(duì)于創(chuàng)建CIN節(jié)點(diǎn)都是必須的;把項(xiàng)目包含的頭文件(.h文件)添加到項(xiàng)目中,這些文件必須在同一目錄(文件夾)中。

  (3)把生成節(jié)點(diǎn)的工具所在子目標(biāo)添加到包含路徑中。選擇菜單命令

  …,在彈出的對(duì)話框中,選中SettingsFor:域中的全部?jī)?nèi)容;選中C/C++標(biāo)簽,將其中的Category置為Preprocessor;在Additionalincludedirectories域中輸入CIN節(jié)點(diǎn)工具所在的子目錄…\LabVIEW\Cintools。

  (4)設(shè)置校準(zhǔn)為1Byte。選擇菜單命令

  …。在彈出的對(duì)話框中,選出SettingsFor:域中的全部?jī)?nèi)容;選中C++標(biāo)簽,將其中的Category置為CODeGenerations;從Structmemberalignment域中選擇1Byte。

  (5)選用多線程run-time函數(shù)庫。選擇菜單命令

  …,在彈出的對(duì)話框中,選出SettingsFor:域中的全部?jī)?nèi)容;選中C/C++標(biāo)簽,將其中的Category置為CodeGenerations;從Userun?timelibrary域中選擇Multithreaded。

  (6)建立一個(gè)定制的生成命令來運(yùn)行l(wèi)vsbutil程序。選擇菜單命令

  …在彈出的對(duì)話框中,選中SettingsFor:域中的全部?jī)?nèi)容;選中CustomBuild標(biāo)簽,在Buildcommand(s):域中輸入…\LabVIEW\Cintools\Win32\lvsbutil$(TargeName)-d$(WkspDir)\$(OutDir);在Outputfile(s):域中輸入$(OutDir)$(TargetName).lsb。

  (7)執(zhí)行生成動(dòng)態(tài)庫命令。執(zhí)行菜單命令Build?BuildStdCMD.Dll。編譯連接正常的情況下,VisualC++編輯器會(huì)按照定制的要求在…\StdCMD\debug目錄下生成StdCMD.lsb文件。

  由于編譯代碼的過程比較煩瑣,容易出錯(cuò),因此我們?cè)O(shè)計(jì)了CIN模板應(yīng)用向?qū)?CinTempAppWizard),并給出CinTemp.awx和CinTemp.pdb文件。將其添加到VisualC++5.0IDE中,可以由用戶方便地自動(dòng)生成編譯CIN代碼的項(xiàng)目。

  2.5裝載CIN目標(biāo)代碼

  裝載CIN目標(biāo)代碼是將生成的.lsb文件裝入VI的過程。這一過程將目標(biāo)代碼裝入內(nèi)存并與VI的前面板/塊流圖鏈接起來,保存VI后,即可在程序中調(diào)用該VI實(shí)現(xiàn)設(shè)定的功能。這一過程的操作是在LabVIEW環(huán)境中打開StdCMD.VI程序,將光標(biāo)指到框圖中的CIN節(jié)點(diǎn)按右鍵。選中彈出菜單中的命令,將StdCMD.lsb文件裝載到CIN節(jié)點(diǎn)上。在使用過程中,也可修改CIN代碼以擴(kuò)充其功能,只需重新裝入新的.lsb文件即可。


上一頁 1 2 下一頁

評(píng)論


技術(shù)專區(qū)

關(guān)閉