[英]Is C\C++ built dll runs real-time in LabView
我想在LabView中使用C \\ C ++生成的DLL,例如本示例或本 示例 。 我想知道它是否在我的目標計算機(我的PXIe)上部署並運行代碼,或者DLL在運行LabView的計算機上運行。 國家儀器在LabView第15頁的兩種調用方法的特征下使用外部代碼時 ,提到:
- 您編譯源代碼並將其鏈接為可執行代碼。 如果您已經有一個已編譯的DLL,則無需執行此步驟。
- 執行調用庫功能節點或CIN時,LabVIEW將調用可執行代碼。
- LabVIEW將輸入數據從程序框圖傳遞至可執行代碼。
- LabVIEW將數據從可執行代碼返回到程序框圖。
我相信這並不能澄清DLL是否在目標設備上運行,也就是實時運行。 而且,我發現該文檔非常混亂,因為它沒有直接引用任何特定的方法。
旁注:我需要在PXIe上運行C / C ++代碼,並且需要從LabVIEW代碼中實時調用它。
我從來沒有做過,所以我只能嘗試給出一些可能有用的提示:
如果要使用dll,則它必須在運行LabVIEW應用程序的目標上運行:如果您的應用程序在台式計算機上運行,則可以在台式計算機上訪問該dll。 如果您的應用程序在PXI上運行,則dll必須在PXI上運行。
看一下這個NI網站 :
如果共享庫基於C ++,National Instruments強烈建議使用MSVC 2009或MSVC 2010編譯器。
和
如果您的DLL可在Windows計算機上運行,則可在LabVIEW Real-Time(NI PharLap ETS)中運行。 但是,如果代碼調用Win32的實時操作系統子集中未包含的函數,則該代碼將失敗。
在此網站上,他們還提供了一個工具來檢查特定的dll是否有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.