在Labview里使用PCIe-1230控制卡
1 現有工程
要使用現有的Labview工程,要確保工程所在的文件夾包含PCI1230.dll、PCIe1230.lvlib、子VI文件夾Vis(見下圖)。
圖1
打開工程后雙擊PCIe1230子VI, Labview會提示查找PCI1230.dll文件、PCIe1230.lvlib文件,請按下圖所示查找并添加到工程里。
圖2
2 新建工程
下面以PCIe-1230為例,在Labview里面設計圖形化界面控制DO0~DO3、 DI0~DI3,來演示在Labview里開發(fā)I/O控制卡應用程序的步驟。
2.1 制作程序前面板
制作程序前面板(Front Panel),添加輸出控件DO0~DO3、輸入顯示控件DI0~DI3、數據輸入控件board id(控制卡的卡號)。
圖3
2.2 制作程序框圖
1)切換到程序框圖(Block Diagram)界面,因為程序是由打開控制卡、設置輸出(DO)與讀取輸入(DI)、關閉控制卡三個順序步驟組成,所以選擇順序結構(Flat Sequence Structure)作為程序整體結構(見下圖)。
圖4
2)在順序結構的第一個框圖中調用打開控制卡的子VI(見下圖),
圖5
然后選擇VI庫中的Pci1230Open(見下圖)。
圖6
3)Pci1230Open需要輸入控制卡卡號(board id)作為參數。如果子VI調用成功,其返回值為1024(十六進制表示為0x400),所以在第二個順序框圖起始處使用比較節(jié)點,檢查該VI的返回值是否為1024,如果比較結果為真,則允許對DI/DO操作的子VI進行調用,否則直接退出應用程序。
需要注意:PCI-1230、PCI-1232出廠默認卡號是15,PCIe-1230、PCIe-1232 出廠默認卡號是0。
圖7
4)在此范例中選擇在while循環(huán)里面一直執(zhí)行DI/DO操作直到stop按鍵按下跳出循環(huán),再進行順序結構的下一步操作。每次循環(huán)中間延時100ms。
圖8
5)調用Pci1230Write Do Bit子VI,其中需要輸入卡號、要訪問的輸出(DO)位號、輸出(DO)的狀態(tài)(1表示輸出導通、0表示輸出截止)。此范例中使用按鍵和真假結構來控制狀態(tài)數據的輸入(見下圖)。
圖9
6)調用Pci1230Read Di Bit子VI,其中需要輸入卡號、要訪問的輸入(DI)位號,此子VI會輸出對應DI的狀態(tài)信息(1表示輸入導通、0表示輸入截止)。通過將狀態(tài)信息與0比較節(jié)點,將此DI狀態(tài)顯示在顯示控件中。
圖10中順序結構的第三個框圖中調用Pci1230 Close.vi來關閉控制卡。
圖10