在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 在LabVIEW下使用ZLGCAN接口函數(shù)庫

            在LabVIEW下使用ZLGCAN接口函數(shù)庫

            作者: 時間:2012-07-11 來源:網(wǎng)絡(luò) 收藏
            1、概述

            VirtualCANInterface(VCI)函數(shù)庫是專門為ZLGCAN設(shè)備在PC上使用而提供的應(yīng)用程序接口。庫里的函數(shù)從ControlCAN.dll中導(dǎo)出,在7.0中可以直接使用這些庫函數(shù)而無需額外的操作。VCI函數(shù)的使用流程如圖1.1所示。


            圖1.1VCI函數(shù)使用流程

            2、使用VCI函數(shù)

            2.1數(shù)據(jù)結(jié)構(gòu)

            VCI函數(shù)庫中定義了一些數(shù)據(jù)結(jié)構(gòu)用于數(shù)據(jù)交換,在使用VCI函數(shù)前應(yīng)該先創(chuàng)建這些數(shù)據(jù)結(jié)構(gòu)。在中創(chuàng)建這些結(jié)構(gòu)時應(yīng)該使用簇——Cluster。一個簇就是一個由若干不同的數(shù)據(jù)類型的成員組成的集合體,類似于C語言中的結(jié)構(gòu)。其成員可以是任意的數(shù)據(jù)類型,但必須都是控件或都是顯示件。成員的邏輯順序是由它們被放入簇的先后順序決定的。

            2.1.1VCI_BOARD_INFO結(jié)構(gòu)

            VCI_BOARD_INFO結(jié)構(gòu)體包含ZLGCAN系列接口卡的設(shè)備信息。結(jié)構(gòu)體將在VCI_ReadBoardInfo函數(shù)中被填充。

            typedefstruct_VCI_BOARD_INFO{
            USHORThw_Version;
            USHORTfw_Version;
            USHORTdr_Version;
            USHORTin_Version;
            USHORTirq_Num;
            BYTEcan_Num;
            CHARstr_Serial_Num[20];
            CHARstr_hw_Type[40];
            USHORTReserved[4];
            }VCI_BOARD_INFO,*PVCI_BOARD_INFO;


            圖2.1VCI_BOARD_INFO結(jié)構(gòu)

            2.1.2VCI_CAN_OBJ結(jié)構(gòu)

            VCI_CAN_OBJ結(jié)構(gòu)體在VCI_Transmit和VCI_Receive函數(shù)中被用來傳送CAN信息幀。

            typedefstruct_VCI_CAN_OBJ{
            UINTID;
            UINTTimeStamp;
            BYTETimeFlag;
            BYTESendType;
            BYTERemoteFlag;
            BYTEExternFlag;
            BYTEDataLen;
            BYTEData[8];
            BYTEReserved[3];
            }VCI_CAN_OBJ,*PVCI_CAN_OBJ;


            圖2.2VCI_CAN_OBJ結(jié)構(gòu)

            2.1.3VCI_CAN_STATUS結(jié)構(gòu)

            VCI_CAN_STATUS結(jié)構(gòu)體包含CAN控制器狀態(tài)信息。結(jié)構(gòu)體將在VCI_ReadCanStatus函數(shù)中被填充。

            typedefstruct_VCI_CAN_STATUS{
            UCHARErrInterrupt;
            UCHARregMode;
            UCHARregStatus;
            UCHARregALCapture;
            UCHARregECCapture;
            UCHARregEWLimit;
            UCHARregRECounter;
            UCHARregTECounter;
            DWORDReserved;
            }VCI_CAN_STATUS,*PVCI_CAN_STATUS;


            圖2.3VCI_CAN_STATUS結(jié)構(gòu)

            2.1.4VCI_ERR_INFO結(jié)構(gòu)

            VCI_ERR_INFO結(jié)構(gòu)體用于裝載VCI庫運行時產(chǎn)生的錯誤信息。結(jié)構(gòu)體將在VCI_ReadErrInfo函數(shù)中被填充。

            typedefstruct_ERR_INFO{
            UINTErrCode;
            BYTEPassive_ErrData[3];
            BYTEArLost_ErrData;
            }VCI_ERR_INFO,*PVCI_ERR_INFO;


            圖2.4VCI_ERR_INFO結(jié)構(gòu)

            2.1.5VCI_INIT_CONFIG結(jié)構(gòu)

            VCI_INIT_CONFIG結(jié)構(gòu)體定義了初始化CAN的配置。結(jié)構(gòu)體將在VCI_InitCan函數(shù)中被填充。

            typedefstruct_INIT_CONFIG{
            DWORDAccCode;
            DWORDAccMask;
            DWORDReserved;
            UCHARFilter;
            UCHARTiming0;
            UCHARTiming1;
            UCHARMode;
            }VCI_INIT_CONFIG,*PVCI_INIT_CONFIG;


            圖2.5VCI_INIT_CONFIG結(jié)構(gòu)

            下面以VCI_CAN_OBJ結(jié)構(gòu)為例,在7.0中創(chuàng)建VCI_CAN_OBJ結(jié)構(gòu)。先在ArrayCluster控件子模板選擇一個簇的空殼放到前面板上,將其命名為VCI_CAN_OBJ,然后根據(jù)需要放置的控件多少用定位工具調(diào)整簇空殼的大小;按照VCI_CAN_OBJ結(jié)構(gòu)成員的順序,從Numeric控件子模板中取NumericIndicator控件或從前面板上移動控件到簇的空殼中,并按圖2.6將各NumericIndicator控件重命名。


            上一頁 1 2 3 4 下一頁

            關(guān)鍵詞: LabVIEW

            評論


            相關(guān)推薦

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

            關(guān)閉